35 lines
800 B
JavaScript
35 lines
800 B
JavaScript
const fs = require('fs');
|
|
const path = require('path');
|
|
|
|
function copyRecursively(file, destination) {
|
|
const target = path.join(destination, path.basename(file));
|
|
if (fs.statSync(file).isDirectory()) {
|
|
console.log('mkdir', target);
|
|
|
|
fs.mkdirSync(target, {recursive: true});
|
|
fs.readdirSync(file).forEach(f => {
|
|
copyRecursively(path.join(file, f), target);
|
|
});
|
|
} else {
|
|
console.log('> cp ', target);
|
|
|
|
fs.copyFileSync(file, target);
|
|
}
|
|
}
|
|
|
|
|
|
[
|
|
'yarn.lock',
|
|
'README.md',
|
|
'config/',
|
|
'views/',
|
|
].forEach(file => {
|
|
copyRecursively(file, 'dist');
|
|
});
|
|
|
|
fs.mkdirSync('dist/types', {recursive: true});
|
|
|
|
fs.readdirSync('src/types').forEach(file => {
|
|
copyRecursively(path.join('src/types', file), 'dist/types');
|
|
});
|