@storm-stack/core
Version:
A build toolkit and runtime used by Storm Software in TypeScript applications
30 lines (26 loc) • 925 B
JavaScript
var chunkA43FUIC2_cjs = require('./chunk-A43FUIC2.cjs');
var types = require('@storm-software/config-tools/types');
var writeFile$1 = require('@stryke/fs/write-file');
var prettier = require('prettier');
// src/lib/utilities/write-file.ts
chunkA43FUIC2_cjs.init_cjs_shims();
async function writeFile(log, filepath, content, skipFormat = false) {
try {
if (skipFormat) {
await writeFile$1.writeFile(filepath, content);
} else {
const config = await prettier.resolveConfig(filepath);
const formatted = await prettier.format(content, {
...config ?? {},
filepath
});
await writeFile$1.writeFile(filepath, formatted || "");
}
} catch (error) {
log(types.LogLevelLabel.ERROR, `Failed to write file ${filepath} to disk
${error?.message ? error.message : ""}`);
}
}
chunkA43FUIC2_cjs.__name(writeFile, "writeFile");
exports.writeFile = writeFile;
;