forked from themeum/tutor
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathdoczcp.js
56 lines (46 loc) · 1.67 KB
/
doczcp.js
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
const fs = require('fs');
const path = require('path');
function copyFileSync( source, target ) {
var targetFile = target;
// If target is a directory, a new file with the same name will be created
if ( fs.existsSync( target ) ) {
if ( fs.lstatSync( target ).isDirectory() ) {
targetFile = path.join( target, path.basename( source ) );
}
}
fs.writeFileSync(targetFile, fs.readFileSync(source));
}
function copyFolderRecursiveSync( source, target ) {
var files = [];
// Check if folder needs to be created or integrated
var targetFolder = path.join( target, path.basename( source ) );
if ( !fs.existsSync( targetFolder ) ) {
fs.mkdirSync( targetFolder );
}
// Copy
if ( fs.lstatSync( source ).isDirectory() ) {
files = fs.readdirSync( source );
files.forEach( function ( file ) {
var curSource = path.join( source, file );
if ( fs.lstatSync( curSource ).isDirectory() ) {
copyFolderRecursiveSync( curSource, targetFolder );
} else {
copyFileSync( curSource, targetFolder );
}
} );
}
}
const dir = path.resolve(__dirname+'/.docz/src');
const src_dir = path.resolve(__dirname+'/v2-library/src/gatsby-theme-docz');
if(!fs.existsSync(dir)) {
fs.mkdirSync(dir, { recursive: true });
console.log('Directory Created', dir);
} else {
console.log(dir+' exists already. Not created.');
}
if(!fs.existsSync(dir+'/gatsby-theme-docz')) {
copyFolderRecursiveSync(src_dir, dir);
console.log('Copied gatsby theme', src_dir, dir);
} else {
console.log(dir+'/gatsby-theme-docz not exist. Could not copy.');
}