Spaces:
Sleeping
Sleeping
| 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 |