node-power-user 0.0.30 → 0.0.31
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/bin/npu +3 -2
- package/dist/index.js +56 -37
- package/package.json +5 -3
- package/src/index.js +56 -37
package/bin/npu
CHANGED
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
#!/usr/bin/env node
|
|
2
|
-
|
|
2
|
+
const argv = require('yargs').argv;
|
|
3
|
+
const Main = new (require('../dist/index.js'))(argv);
|
|
3
4
|
(async function() {
|
|
4
5
|
'use strict';
|
|
5
|
-
await Main.process(
|
|
6
|
+
await Main.process(argv);
|
|
6
7
|
}());
|
package/dist/index.js
CHANGED
|
@@ -17,6 +17,7 @@ const { isEqual } = require('lodash');
|
|
|
17
17
|
const semverIsEqual = require('semver/functions/eq')
|
|
18
18
|
const semverCoerce = require('semver/functions/coerce')
|
|
19
19
|
const table = require('table').table;
|
|
20
|
+
const ProgressBar = require('cli-progress');
|
|
20
21
|
const Npm = require('npm-api');
|
|
21
22
|
const os = require('os');
|
|
22
23
|
|
|
@@ -26,11 +27,11 @@ function Main() {
|
|
|
26
27
|
|
|
27
28
|
}
|
|
28
29
|
|
|
29
|
-
Main.prototype.process = async function (
|
|
30
|
-
const self = this;
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
30
|
+
Main.prototype.process = async function (options) {
|
|
31
|
+
const self = this;
|
|
32
|
+
self.options = options || {};
|
|
33
|
+
|
|
34
|
+
// console.log('--process.env', process.env);
|
|
34
35
|
|
|
35
36
|
try {
|
|
36
37
|
self.npu_packageJSON = require('../package.json');
|
|
@@ -42,6 +43,8 @@ const self = this;
|
|
|
42
43
|
self.proj_path = process.cwd();
|
|
43
44
|
self.proj_packageJSONPath = path.resolve(self.proj_path, './package.json');
|
|
44
45
|
self.proj_packageJSON = require(self.proj_packageJSONPath);
|
|
46
|
+
self.proj_packageJSON.allDependencies = _.merge({}, self.proj_packageJSON.peerDependencies, self.proj_packageJSON.devDependencies, self.proj_packageJSON.dependencies);
|
|
47
|
+
self.proj_packageJSON.allDependenciesKeys = Object.keys(self.proj_packageJSON.allDependencies);
|
|
45
48
|
} catch (e) {
|
|
46
49
|
self.proj_packageJSON = {
|
|
47
50
|
name: 'Unknown Name',
|
|
@@ -49,43 +52,50 @@ const self = this;
|
|
|
49
52
|
dependencies: {},
|
|
50
53
|
devDependencies: {},
|
|
51
54
|
peerDependencies: {},
|
|
55
|
+
allDependencies: {},
|
|
52
56
|
}
|
|
53
57
|
console.error(chalk.red(`This project does not contain a valid package.json file!: \n${e}`));
|
|
54
58
|
}
|
|
55
59
|
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
}
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
}
|
|
60
|
+
// console.log('---args', args);
|
|
61
|
+
// if (Array.isArray(args)) {
|
|
62
|
+
// for (var i = 0; i < args.length; i++) {
|
|
63
|
+
// self.options[args[i]] = true;
|
|
64
|
+
// }
|
|
65
|
+
// } else {
|
|
66
|
+
// Object.keys(args)
|
|
67
|
+
// .forEach((arg, i) => {
|
|
68
|
+
// self.options[arg] = args[arg];
|
|
69
|
+
// });
|
|
70
|
+
// }
|
|
71
|
+
Object.keys(argv)
|
|
72
|
+
.forEach(arg => {
|
|
73
|
+
self.options[arg] = argv[arg]
|
|
74
|
+
});
|
|
66
75
|
|
|
67
|
-
if (self.options.d || self.options.debug ||
|
|
68
|
-
console.log('
|
|
76
|
+
if (self.options.d || self.options.debug || process.env.NPU_LOG === 'true') {
|
|
77
|
+
console.log('argv', argv);
|
|
78
|
+
console.log('options', self.options);
|
|
69
79
|
}
|
|
70
80
|
|
|
71
|
-
if (self.options
|
|
72
|
-
const time = parseInt(self.options
|
|
81
|
+
if (self.options.wait) {
|
|
82
|
+
const time = parseInt(typeof self.options.wait === 'number' ? self.options.wait : 1000);
|
|
73
83
|
self.log(chalk.blue(`Waiting ${time}...`));
|
|
74
84
|
await powertools.wait(time);
|
|
75
85
|
self.log(chalk.green(`Done waiting`));
|
|
76
86
|
}
|
|
77
87
|
|
|
78
|
-
if (self.options.v || self.options.version
|
|
88
|
+
if (self.options.v || self.options.version) {
|
|
79
89
|
self.log(chalk.blue(`Node Power User is v${chalk.bold(self.npu_packageJSON.version)}`));
|
|
80
90
|
return self.npu_packageJSON.version;
|
|
81
91
|
}
|
|
82
92
|
|
|
83
|
-
if (self.options.pv || self.options
|
|
93
|
+
if (self.options.pv || self.options.project || self.options['project-version']) {
|
|
84
94
|
self.log(chalk.blue(`The current project (${chalk.bold(self.proj_packageJSON.name)}) is v${chalk.bold(self.proj_packageJSON.version)}`));
|
|
85
95
|
return self.proj_packageJSON.version;
|
|
86
96
|
}
|
|
87
97
|
|
|
88
|
-
if (self.options.lp || self.options.listpackages || self.options['-
|
|
98
|
+
if (self.options.lp || self.options.listpackages || self.options['list-packages']) {
|
|
89
99
|
self.log(chalk.blue.bold(`Dependencies:`));
|
|
90
100
|
|
|
91
101
|
Object.keys(self.proj_packageJSON.dependencies || {})
|
|
@@ -112,7 +122,7 @@ const self = this;
|
|
|
112
122
|
};
|
|
113
123
|
}
|
|
114
124
|
|
|
115
|
-
if (self.options.out || self.options.outdated || self.options.match
|
|
125
|
+
if (self.options.out || self.options.outdated || self.options.match) {
|
|
116
126
|
// self.log(chalk.blue.bold(`Outdated:`));
|
|
117
127
|
// self.log(chalk.green(`name: package = installed`));
|
|
118
128
|
|
|
@@ -122,23 +132,24 @@ const self = this;
|
|
|
122
132
|
|
|
123
133
|
const config = {
|
|
124
134
|
columnDefault: {
|
|
125
|
-
width: 10,
|
|
135
|
+
// width: 10,
|
|
126
136
|
},
|
|
127
137
|
header: {
|
|
128
138
|
alignment: 'center',
|
|
129
139
|
content: 'Outdated and mismatched packages',
|
|
130
140
|
},
|
|
131
|
-
}
|
|
141
|
+
}
|
|
142
|
+
const progress = new ProgressBar.SingleBar({}, ProgressBar.Presets.shades_classic);
|
|
143
|
+
progress.start(self.proj_packageJSON.allDependenciesKeys.length, 0);
|
|
132
144
|
|
|
133
145
|
const response = {};
|
|
134
146
|
|
|
135
|
-
const depKeys = Object.keys(self.proj_packageJSON.dependencies || {});
|
|
136
|
-
|
|
137
147
|
let bumpCommand = '';
|
|
138
|
-
|
|
139
|
-
for (var i = 0; i <
|
|
140
|
-
|
|
141
|
-
const
|
|
148
|
+
|
|
149
|
+
for (var i = 0; i < self.proj_packageJSON.allDependenciesKeys.length; i++) {
|
|
150
|
+
progress.update(i);
|
|
151
|
+
const dep = self.proj_packageJSON.allDependenciesKeys[i];
|
|
152
|
+
const packageVersion = _coerce(self.proj_packageJSON.allDependencies[dep]);
|
|
142
153
|
const installedVersion = _coerce(
|
|
143
154
|
_getVersion(
|
|
144
155
|
(await asyncCommand(`npm list ${dep} --depth=0 | grep ${dep}`))
|
|
@@ -190,6 +201,8 @@ const self = this;
|
|
|
190
201
|
// .forEach((dep, i) => {
|
|
191
202
|
// self.log(chalk.blue(`${dep} @ ${self.proj_packageJSON.devDependencies[dep]}`));
|
|
192
203
|
// });
|
|
204
|
+
|
|
205
|
+
progress.stop();
|
|
193
206
|
|
|
194
207
|
console.log(table(data, config));
|
|
195
208
|
|
|
@@ -214,7 +227,7 @@ const self = this;
|
|
|
214
227
|
return response;
|
|
215
228
|
}
|
|
216
229
|
|
|
217
|
-
if (self.options.global || self.options
|
|
230
|
+
if (self.options.global || self.options.g) {
|
|
218
231
|
const parentPath = `/Users/${os.userInfo().username}/.nvm/versions/node`;
|
|
219
232
|
const versions = jetpack.list(parentPath);
|
|
220
233
|
const currentNode = process.versions.node;
|
|
@@ -236,17 +249,21 @@ const self = this;
|
|
|
236
249
|
|
|
237
250
|
const config = {
|
|
238
251
|
columnDefault: {
|
|
239
|
-
width: 10,
|
|
252
|
+
// width: 10,
|
|
240
253
|
},
|
|
241
254
|
header: {
|
|
242
255
|
alignment: 'center',
|
|
243
256
|
content: `Global packages for v${parsed.version}`,
|
|
244
257
|
},
|
|
245
|
-
}
|
|
258
|
+
}
|
|
259
|
+
const progress = new ProgressBar.SingleBar({}, ProgressBar.Presets.shades_classic);
|
|
260
|
+
progress.start(modules.length, 0);
|
|
246
261
|
|
|
247
262
|
response[parsed.version] = {};
|
|
248
263
|
|
|
249
264
|
for (var j = 0; j < modules.length; j++) {
|
|
265
|
+
progress.update(i, 0);
|
|
266
|
+
|
|
250
267
|
const mod = modules[j];
|
|
251
268
|
const packagePath = path.resolve(lib, mod, 'package.json');
|
|
252
269
|
try {
|
|
@@ -274,6 +291,8 @@ const self = this;
|
|
|
274
291
|
}
|
|
275
292
|
}
|
|
276
293
|
|
|
294
|
+
progress.stop();
|
|
295
|
+
|
|
277
296
|
console.log(table(data, config));
|
|
278
297
|
|
|
279
298
|
} catch (e) {
|
|
@@ -285,11 +304,11 @@ const self = this;
|
|
|
285
304
|
}
|
|
286
305
|
|
|
287
306
|
if (self.options.clean) {
|
|
288
|
-
const NPM_INSTALL_FLAG = self.options['
|
|
307
|
+
const NPM_INSTALL_FLAG = self.options['no-optional'] || self.options['nooptional'] ? '--no-optional' : ''
|
|
289
308
|
const NPM_CLEAN = `rm -fr node_modules && rm -fr package-lock.json && npm cache clean --force && npm install ${NPM_INSTALL_FLAG} && npm rb`;
|
|
290
309
|
|
|
291
310
|
self.log(chalk.blue(`Running: ${NPM_CLEAN}...`));
|
|
292
|
-
|
|
311
|
+
|
|
293
312
|
return await asyncCommand(NPM_CLEAN)
|
|
294
313
|
.then(r => {
|
|
295
314
|
self.log(chalk.green(`Finished cleaning`));
|
|
@@ -308,7 +327,7 @@ const self = this;
|
|
|
308
327
|
Main.prototype.log = function () {
|
|
309
328
|
const self = this;
|
|
310
329
|
|
|
311
|
-
if (self.options.
|
|
330
|
+
if (self.options.log !== false) {
|
|
312
331
|
console.log(...arguments);
|
|
313
332
|
}
|
|
314
333
|
};
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "node-power-user",
|
|
3
|
-
"version": "0.0.
|
|
3
|
+
"version": "0.0.31",
|
|
4
4
|
"description": "Easy tools for every Node.js developer!",
|
|
5
5
|
"main": "dist/index.js",
|
|
6
6
|
"bin": {
|
|
@@ -10,7 +10,8 @@
|
|
|
10
10
|
},
|
|
11
11
|
"scripts": {
|
|
12
12
|
"test": "npm run prepare && ./node_modules/mocha/bin/mocha test/ --recursive --timeout=10000",
|
|
13
|
-
"start": "npm run prepare &&
|
|
13
|
+
"start": "npm run prepare && ./bin/npu",
|
|
14
|
+
"help": "echo 'npm start -- -v'",
|
|
14
15
|
"prepare": "node -e 'require(`prepare-package`)()'"
|
|
15
16
|
},
|
|
16
17
|
"repository": {
|
|
@@ -30,6 +31,7 @@
|
|
|
30
31
|
"homepage": "https://itwcreativeworks.com",
|
|
31
32
|
"dependencies": {
|
|
32
33
|
"chalk": "^4.1.2",
|
|
34
|
+
"cli-progress": "^3.11.2",
|
|
33
35
|
"fs-jetpack": "^4.3.1",
|
|
34
36
|
"inquirer": "^8.2.4",
|
|
35
37
|
"json5": "^2.2.1",
|
|
@@ -49,4 +51,4 @@
|
|
|
49
51
|
"mocha": "^8.4.0",
|
|
50
52
|
"prepare-package": "^0.0.16"
|
|
51
53
|
}
|
|
52
|
-
}
|
|
54
|
+
}
|
package/src/index.js
CHANGED
|
@@ -17,6 +17,7 @@ const { isEqual } = require('lodash');
|
|
|
17
17
|
const semverIsEqual = require('semver/functions/eq')
|
|
18
18
|
const semverCoerce = require('semver/functions/coerce')
|
|
19
19
|
const table = require('table').table;
|
|
20
|
+
const ProgressBar = require('cli-progress');
|
|
20
21
|
const Npm = require('npm-api');
|
|
21
22
|
const os = require('os');
|
|
22
23
|
|
|
@@ -26,11 +27,11 @@ function Main() {
|
|
|
26
27
|
|
|
27
28
|
}
|
|
28
29
|
|
|
29
|
-
Main.prototype.process = async function (
|
|
30
|
-
const self = this;
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
30
|
+
Main.prototype.process = async function (options) {
|
|
31
|
+
const self = this;
|
|
32
|
+
self.options = options || {};
|
|
33
|
+
|
|
34
|
+
// console.log('--process.env', process.env);
|
|
34
35
|
|
|
35
36
|
try {
|
|
36
37
|
self.npu_packageJSON = require('../package.json');
|
|
@@ -42,6 +43,8 @@ const self = this;
|
|
|
42
43
|
self.proj_path = process.cwd();
|
|
43
44
|
self.proj_packageJSONPath = path.resolve(self.proj_path, './package.json');
|
|
44
45
|
self.proj_packageJSON = require(self.proj_packageJSONPath);
|
|
46
|
+
self.proj_packageJSON.allDependencies = _.merge({}, self.proj_packageJSON.peerDependencies, self.proj_packageJSON.devDependencies, self.proj_packageJSON.dependencies);
|
|
47
|
+
self.proj_packageJSON.allDependenciesKeys = Object.keys(self.proj_packageJSON.allDependencies);
|
|
45
48
|
} catch (e) {
|
|
46
49
|
self.proj_packageJSON = {
|
|
47
50
|
name: 'Unknown Name',
|
|
@@ -49,43 +52,50 @@ const self = this;
|
|
|
49
52
|
dependencies: {},
|
|
50
53
|
devDependencies: {},
|
|
51
54
|
peerDependencies: {},
|
|
55
|
+
allDependencies: {},
|
|
52
56
|
}
|
|
53
57
|
console.error(chalk.red(`This project does not contain a valid package.json file!: \n${e}`));
|
|
54
58
|
}
|
|
55
59
|
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
}
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
}
|
|
60
|
+
// console.log('---args', args);
|
|
61
|
+
// if (Array.isArray(args)) {
|
|
62
|
+
// for (var i = 0; i < args.length; i++) {
|
|
63
|
+
// self.options[args[i]] = true;
|
|
64
|
+
// }
|
|
65
|
+
// } else {
|
|
66
|
+
// Object.keys(args)
|
|
67
|
+
// .forEach((arg, i) => {
|
|
68
|
+
// self.options[arg] = args[arg];
|
|
69
|
+
// });
|
|
70
|
+
// }
|
|
71
|
+
Object.keys(argv)
|
|
72
|
+
.forEach(arg => {
|
|
73
|
+
self.options[arg] = argv[arg]
|
|
74
|
+
});
|
|
66
75
|
|
|
67
|
-
if (self.options.d || self.options.debug ||
|
|
68
|
-
console.log('
|
|
76
|
+
if (self.options.d || self.options.debug || process.env.NPU_LOG === 'true') {
|
|
77
|
+
console.log('argv', argv);
|
|
78
|
+
console.log('options', self.options);
|
|
69
79
|
}
|
|
70
80
|
|
|
71
|
-
if (self.options
|
|
72
|
-
const time = parseInt(self.options
|
|
81
|
+
if (self.options.wait) {
|
|
82
|
+
const time = parseInt(typeof self.options.wait === 'number' ? self.options.wait : 1000);
|
|
73
83
|
self.log(chalk.blue(`Waiting ${time}...`));
|
|
74
84
|
await powertools.wait(time);
|
|
75
85
|
self.log(chalk.green(`Done waiting`));
|
|
76
86
|
}
|
|
77
87
|
|
|
78
|
-
if (self.options.v || self.options.version
|
|
88
|
+
if (self.options.v || self.options.version) {
|
|
79
89
|
self.log(chalk.blue(`Node Power User is v${chalk.bold(self.npu_packageJSON.version)}`));
|
|
80
90
|
return self.npu_packageJSON.version;
|
|
81
91
|
}
|
|
82
92
|
|
|
83
|
-
if (self.options.pv || self.options
|
|
93
|
+
if (self.options.pv || self.options.project || self.options['project-version']) {
|
|
84
94
|
self.log(chalk.blue(`The current project (${chalk.bold(self.proj_packageJSON.name)}) is v${chalk.bold(self.proj_packageJSON.version)}`));
|
|
85
95
|
return self.proj_packageJSON.version;
|
|
86
96
|
}
|
|
87
97
|
|
|
88
|
-
if (self.options.lp || self.options.listpackages || self.options['-
|
|
98
|
+
if (self.options.lp || self.options.listpackages || self.options['list-packages']) {
|
|
89
99
|
self.log(chalk.blue.bold(`Dependencies:`));
|
|
90
100
|
|
|
91
101
|
Object.keys(self.proj_packageJSON.dependencies || {})
|
|
@@ -112,7 +122,7 @@ const self = this;
|
|
|
112
122
|
};
|
|
113
123
|
}
|
|
114
124
|
|
|
115
|
-
if (self.options.out || self.options.outdated || self.options.match
|
|
125
|
+
if (self.options.out || self.options.outdated || self.options.match) {
|
|
116
126
|
// self.log(chalk.blue.bold(`Outdated:`));
|
|
117
127
|
// self.log(chalk.green(`name: package = installed`));
|
|
118
128
|
|
|
@@ -122,23 +132,24 @@ const self = this;
|
|
|
122
132
|
|
|
123
133
|
const config = {
|
|
124
134
|
columnDefault: {
|
|
125
|
-
width: 10,
|
|
135
|
+
// width: 10,
|
|
126
136
|
},
|
|
127
137
|
header: {
|
|
128
138
|
alignment: 'center',
|
|
129
139
|
content: 'Outdated and mismatched packages',
|
|
130
140
|
},
|
|
131
|
-
}
|
|
141
|
+
}
|
|
142
|
+
const progress = new ProgressBar.SingleBar({}, ProgressBar.Presets.shades_classic);
|
|
143
|
+
progress.start(self.proj_packageJSON.allDependenciesKeys.length, 0);
|
|
132
144
|
|
|
133
145
|
const response = {};
|
|
134
146
|
|
|
135
|
-
const depKeys = Object.keys(self.proj_packageJSON.dependencies || {});
|
|
136
|
-
|
|
137
147
|
let bumpCommand = '';
|
|
138
|
-
|
|
139
|
-
for (var i = 0; i <
|
|
140
|
-
|
|
141
|
-
const
|
|
148
|
+
|
|
149
|
+
for (var i = 0; i < self.proj_packageJSON.allDependenciesKeys.length; i++) {
|
|
150
|
+
progress.update(i);
|
|
151
|
+
const dep = self.proj_packageJSON.allDependenciesKeys[i];
|
|
152
|
+
const packageVersion = _coerce(self.proj_packageJSON.allDependencies[dep]);
|
|
142
153
|
const installedVersion = _coerce(
|
|
143
154
|
_getVersion(
|
|
144
155
|
(await asyncCommand(`npm list ${dep} --depth=0 | grep ${dep}`))
|
|
@@ -190,6 +201,8 @@ const self = this;
|
|
|
190
201
|
// .forEach((dep, i) => {
|
|
191
202
|
// self.log(chalk.blue(`${dep} @ ${self.proj_packageJSON.devDependencies[dep]}`));
|
|
192
203
|
// });
|
|
204
|
+
|
|
205
|
+
progress.stop();
|
|
193
206
|
|
|
194
207
|
console.log(table(data, config));
|
|
195
208
|
|
|
@@ -214,7 +227,7 @@ const self = this;
|
|
|
214
227
|
return response;
|
|
215
228
|
}
|
|
216
229
|
|
|
217
|
-
if (self.options.global || self.options
|
|
230
|
+
if (self.options.global || self.options.g) {
|
|
218
231
|
const parentPath = `/Users/${os.userInfo().username}/.nvm/versions/node`;
|
|
219
232
|
const versions = jetpack.list(parentPath);
|
|
220
233
|
const currentNode = process.versions.node;
|
|
@@ -236,17 +249,21 @@ const self = this;
|
|
|
236
249
|
|
|
237
250
|
const config = {
|
|
238
251
|
columnDefault: {
|
|
239
|
-
width: 10,
|
|
252
|
+
// width: 10,
|
|
240
253
|
},
|
|
241
254
|
header: {
|
|
242
255
|
alignment: 'center',
|
|
243
256
|
content: `Global packages for v${parsed.version}`,
|
|
244
257
|
},
|
|
245
|
-
}
|
|
258
|
+
}
|
|
259
|
+
const progress = new ProgressBar.SingleBar({}, ProgressBar.Presets.shades_classic);
|
|
260
|
+
progress.start(modules.length, 0);
|
|
246
261
|
|
|
247
262
|
response[parsed.version] = {};
|
|
248
263
|
|
|
249
264
|
for (var j = 0; j < modules.length; j++) {
|
|
265
|
+
progress.update(i, 0);
|
|
266
|
+
|
|
250
267
|
const mod = modules[j];
|
|
251
268
|
const packagePath = path.resolve(lib, mod, 'package.json');
|
|
252
269
|
try {
|
|
@@ -274,6 +291,8 @@ const self = this;
|
|
|
274
291
|
}
|
|
275
292
|
}
|
|
276
293
|
|
|
294
|
+
progress.stop();
|
|
295
|
+
|
|
277
296
|
console.log(table(data, config));
|
|
278
297
|
|
|
279
298
|
} catch (e) {
|
|
@@ -285,11 +304,11 @@ const self = this;
|
|
|
285
304
|
}
|
|
286
305
|
|
|
287
306
|
if (self.options.clean) {
|
|
288
|
-
const NPM_INSTALL_FLAG = self.options['
|
|
307
|
+
const NPM_INSTALL_FLAG = self.options['no-optional'] || self.options['nooptional'] ? '--no-optional' : ''
|
|
289
308
|
const NPM_CLEAN = `rm -fr node_modules && rm -fr package-lock.json && npm cache clean --force && npm install ${NPM_INSTALL_FLAG} && npm rb`;
|
|
290
309
|
|
|
291
310
|
self.log(chalk.blue(`Running: ${NPM_CLEAN}...`));
|
|
292
|
-
|
|
311
|
+
|
|
293
312
|
return await asyncCommand(NPM_CLEAN)
|
|
294
313
|
.then(r => {
|
|
295
314
|
self.log(chalk.green(`Finished cleaning`));
|
|
@@ -308,7 +327,7 @@ const self = this;
|
|
|
308
327
|
Main.prototype.log = function () {
|
|
309
328
|
const self = this;
|
|
310
329
|
|
|
311
|
-
if (self.options.
|
|
330
|
+
if (self.options.log !== false) {
|
|
312
331
|
console.log(...arguments);
|
|
313
332
|
}
|
|
314
333
|
};
|