alinea
Version:
Headless git-based CMS
27 lines (25 loc) • 686 B
JavaScript
import "../../chunks/chunk-NZLE2WMY.js";
// src/cli/util/FS.ts
import fs from "node:fs/promises";
async function copyFileIfContentsDiffer(source, target) {
const data = await fs.readFile(source);
try {
const current = await fs.readFile(target);
if (current.equals(data)) return;
} catch (e) {
}
return fs.copyFile(source, target);
}
async function writeFileIfContentsDiffer(destination, contents) {
const data = Buffer.from(contents);
try {
const current = await fs.readFile(destination);
if (current.equals(data)) return;
} catch (e) {
}
return fs.writeFile(destination, data);
}
export {
copyFileIfContentsDiffer,
writeFileIfContentsDiffer
};