-
Notifications
You must be signed in to change notification settings - Fork 4
/
mergePackagesFiles.js
49 lines (46 loc) · 1.46 KB
/
mergePackagesFiles.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
/**
* Created by itaig on 26/09/2016.
*/
var fileSrcName = process.argv[2];
var fileTrgName = process.argv[3];
var mapDep = {};
var mapDevDep = {};
var isInDep = false;
var isInDevDeps = false;
var fs = require('fs');
var objSrc = JSON.parse(fs.readFileSync(fileSrcName, 'utf8'));
var objTrg = JSON.parse(fs.readFileSync(fileTrgName, 'utf8'));
var depSrc = objTrg.dependencies;
for (var p in objSrc.dependencies) {
if( objSrc.dependencies.hasOwnProperty(p) ) {
console.log(p +" - " + objSrc.dependencies[p]);
depSrc[p] = objSrc.dependencies[p];
}
}
for (var p in objSrc.devDependencies) {
if( objSrc.devDependencies.hasOwnProperty(p) && objTrg.dependencies.hasOwnProperty(p)) {
console.log(p +" - " + objSrc.devDependencies[p]);
depSrc[p] = objSrc.devDependencies[p];
}
}
console.log("dependencies");
console.log(depSrc);
var devdep = objTrg.devDependencies;
for (var p in objSrc.devDependencies) {
if( objSrc.devDependencies.hasOwnProperty(p) ) {
console.log(p +" - " + objSrc.devDependencies[p] );
devdep[p] = objSrc.devDependencies[p];
}
}
console.log("dev dependencies");
console.log(devdep);
var obj = {};
obj.dependencies = depSrc;
obj.devDependencies = devdep;
var newPACKAGEjson = JSON.stringify(obj,null,2);
console.log(newPACKAGEjson);
fs = require('fs');
fs.writeFile('newPackageJson.txt', newPACKAGEjson , function (err) {
if (err) return console.log(err);
console.log('newPackageJson.txt');
});