@storm-stack/core
Version:
A build toolkit and runtime used by Storm Software in TypeScript applications
28 lines (25 loc) • 863 B
JavaScript
import { init_esm_shims, __name } from './chunk-QH7NXH7H.js';
import { LogLevelLabel } from '@storm-software/config-tools/types';
import { writeFile as writeFile$1 } from '@stryke/fs/write-file';
import { resolveConfig, format } from 'prettier';
// src/lib/utilities/write-file.ts
init_esm_shims();
async function writeFile(log, filepath, content, skipFormat = false) {
try {
if (skipFormat) {
await writeFile$1(filepath, content);
} else {
const config = await resolveConfig(filepath);
const formatted = await format(content, {
...config ?? {},
filepath
});
await writeFile$1(filepath, formatted || "");
}
} catch (error) {
log(LogLevelLabel.ERROR, `Failed to write file ${filepath} to disk
${error?.message ? error.message : ""}`);
}
}
__name(writeFile, "writeFile");
export { writeFile };