hydrogen/packages/create-hydrogen-app/scripts/utils.js
2021-11-04 15:22:30 -07:00

30 lines
650 B
JavaScript

// @ts-check
const fs = require('fs');
const path = require('path');
function copyDir(srcDir, destDir, skipFiles = []) {
fs.mkdirSync(destDir, {recursive: true});
for (const file of fs.readdirSync(srcDir)) {
const srcFile = path.resolve(srcDir, file);
const destFile = path.resolve(destDir, file);
copy(srcFile, destFile, skipFiles);
}
}
function copy(src, dest, skipFiles = []) {
if (skipFiles.some((file) => src.includes(file))) return;
const stat = fs.statSync(src);
if (stat.isDirectory()) {
copyDir(src, dest, skipFiles);
} else {
fs.copyFileSync(src, dest);
}
}
module.exports = {
copy,
copyDir,
};