node-talisman
Version:
A npm package for running Thoughtwork's Talisman tool
39 lines (36 loc) • 945 B
JavaScript
import fs from 'fs';
import mkdirp from 'mkdirp';
import messages from "../messages.js";
import { CONSOLE_COLORS } from "../constants.js";
import logToConsole, { logToConsoleForDebugging } from "../utils/logToConsole.js";
import doesFileExists from "../utils/doesFileExists.js";
const writeFile = ({
fileBasePath,
filePath,
data
}) => {
logToConsoleForDebugging({
fileBasePath,
filePath
});
return new Promise((resolve, reject) => {
try {
if (!doesFileExists(fileBasePath)) {
mkdirp.sync(fileBasePath);
}
fs.writeFileSync(filePath, data);
logToConsole({
color: CONSOLE_COLORS.green
}, messages.writeFile.succeed.toString());
logToConsole();
resolve();
} catch (error) {
logToConsole({
color: CONSOLE_COLORS.red
}, messages.writeFile.failed.toString());
logToConsole();
reject(error);
}
});
};
export default writeFile;