import { promises as fs } from "fs"; import path from "path"; import * as Log from "../../build/output/log"; import isError from "../../lib/is-error"; /** * Check if a given file path is a directory or not. * Returns `true` if the path is a directory. */ function isDirectory(/** The path to a file to check. */ filePath) { return fs.stat(filePath).then((stat)=>stat.isDirectory()).catch((error)=>{ if (isError(error) && (error.code === "ENOENT" || error.code === "ENOTDIR")) { return false; } throw error; }); } /** * Create a file with eslint output data */ export async function writeOutputFile(/** The name file that needs to be created */ outputFile, /** The data that needs to be inserted into the file */ outputData) { const filePath = path.resolve(process.cwd(), outputFile); if (await isDirectory(filePath)) { Log.error(`Cannot write to output file path, it is a directory: ${filePath}`); } else { try { await fs.mkdir(path.dirname(filePath), { recursive: true }); await fs.writeFile(filePath, outputData); Log.info(`The output file has been created: ${filePath}`); } catch (err) { Log.error(`There was a problem writing the output file: ${filePath}`); console.error(err); } } } //# sourceMappingURL=writeOutputFile.js.map