node-power-user 0.0.31 → 0.0.33
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/dist/index.js +34 -19
- package/package.json +1 -1
- package/src/index.js +34 -19
package/dist/index.js
CHANGED
|
@@ -24,6 +24,14 @@ const os = require('os');
|
|
|
24
24
|
// const npm = require('npm');
|
|
25
25
|
|
|
26
26
|
function Main() {
|
|
27
|
+
const self = this;
|
|
28
|
+
|
|
29
|
+
self.options = {};
|
|
30
|
+
self.npu_packageJSON = {};
|
|
31
|
+
self.proj_path = null;
|
|
32
|
+
self.proj_packageJSONPath = null;
|
|
33
|
+
self.proj_packageJSON = {};
|
|
34
|
+
self.proj_allDependencies = {};
|
|
27
35
|
|
|
28
36
|
}
|
|
29
37
|
|
|
@@ -43,8 +51,9 @@ Main.prototype.process = async function (options) {
|
|
|
43
51
|
self.proj_path = process.cwd();
|
|
44
52
|
self.proj_packageJSONPath = path.resolve(self.proj_path, './package.json');
|
|
45
53
|
self.proj_packageJSON = require(self.proj_packageJSONPath);
|
|
46
|
-
self.
|
|
47
|
-
self.
|
|
54
|
+
self.proj_allDependencies.pairs = _.merge({}, self.proj_packageJSON.peerDependencies, self.proj_packageJSON.devDependencies, self.proj_packageJSON.dependencies);
|
|
55
|
+
self.proj_allDependencies.list = Object.keys(self.proj_allDependencies.pairs);
|
|
56
|
+
|
|
48
57
|
} catch (e) {
|
|
49
58
|
self.proj_packageJSON = {
|
|
50
59
|
name: 'Unknown Name',
|
|
@@ -73,29 +82,29 @@ Main.prototype.process = async function (options) {
|
|
|
73
82
|
self.options[arg] = argv[arg]
|
|
74
83
|
});
|
|
75
84
|
|
|
76
|
-
if (self.options.d || self.options.debug || process.env.NPU_LOG === 'true') {
|
|
85
|
+
if (self.options.d || self.options.debug || self.options._.includes('debug') || process.env.NPU_LOG === 'true') {
|
|
77
86
|
console.log('argv', argv);
|
|
78
87
|
console.log('options', self.options);
|
|
79
88
|
}
|
|
80
89
|
|
|
81
|
-
if (self.options.wait) {
|
|
90
|
+
if (self.options.wait || self.options._.includes('wait')) {
|
|
82
91
|
const time = parseInt(typeof self.options.wait === 'number' ? self.options.wait : 1000);
|
|
83
92
|
self.log(chalk.blue(`Waiting ${time}...`));
|
|
84
93
|
await powertools.wait(time);
|
|
85
94
|
self.log(chalk.green(`Done waiting`));
|
|
86
95
|
}
|
|
87
96
|
|
|
88
|
-
if (self.options.v || self.options.version) {
|
|
97
|
+
if (self.options.v || self.options.version || self.options._.includes('version')) {
|
|
89
98
|
self.log(chalk.blue(`Node Power User is v${chalk.bold(self.npu_packageJSON.version)}`));
|
|
90
99
|
return self.npu_packageJSON.version;
|
|
91
100
|
}
|
|
92
101
|
|
|
93
|
-
if (self.options.pv || self.options.project || self.options['project-version']) {
|
|
102
|
+
if (self.options.pv || self.options.project || self.options['project-version'] || self.options._.includes('project')) {
|
|
94
103
|
self.log(chalk.blue(`The current project (${chalk.bold(self.proj_packageJSON.name)}) is v${chalk.bold(self.proj_packageJSON.version)}`));
|
|
95
104
|
return self.proj_packageJSON.version;
|
|
96
105
|
}
|
|
97
106
|
|
|
98
|
-
if (self.options.lp || self.options.listpackages || self.options['list-packages']) {
|
|
107
|
+
if (self.options.lp || self.options.listpackages || self.options['list-packages'] || self.options._.includes('listpackages')) {
|
|
99
108
|
self.log(chalk.blue.bold(`Dependencies:`));
|
|
100
109
|
|
|
101
110
|
Object.keys(self.proj_packageJSON.dependencies || {})
|
|
@@ -122,7 +131,7 @@ Main.prototype.process = async function (options) {
|
|
|
122
131
|
};
|
|
123
132
|
}
|
|
124
133
|
|
|
125
|
-
if (self.options.out || self.options.outdated || self.options.match) {
|
|
134
|
+
if (self.options.out || self.options.outdated || self.options.match || self.options._.includes('out') || self.options._.includes('outdated') || self.options._.includes('match')) {
|
|
126
135
|
// self.log(chalk.blue.bold(`Outdated:`));
|
|
127
136
|
// self.log(chalk.green(`name: package = installed`));
|
|
128
137
|
|
|
@@ -140,22 +149,26 @@ Main.prototype.process = async function (options) {
|
|
|
140
149
|
},
|
|
141
150
|
}
|
|
142
151
|
const progress = new ProgressBar.SingleBar({}, ProgressBar.Presets.shades_classic);
|
|
143
|
-
progress.start(self.
|
|
152
|
+
progress.start(self.proj_allDependencies.list.length, 0);
|
|
144
153
|
|
|
145
154
|
const response = {};
|
|
146
155
|
|
|
147
156
|
let bumpCommand = '';
|
|
148
157
|
|
|
149
|
-
for (var i = 0; i < self.
|
|
158
|
+
for (var i = 0; i < self.proj_allDependencies.list.length; i++) {
|
|
150
159
|
progress.update(i);
|
|
151
|
-
const dep = self.
|
|
152
|
-
const
|
|
160
|
+
const dep = self.proj_allDependencies.list[i];
|
|
161
|
+
const depPair = self.proj_allDependencies.pairs[dep];
|
|
162
|
+
const packageVersion = _coerce(depPair);
|
|
153
163
|
const installedVersion = _coerce(
|
|
154
|
-
|
|
155
|
-
(await asyncCommand(`npm list ${dep} --depth=0 | grep ${dep}`))
|
|
156
|
-
.split(' ')[1]
|
|
164
|
+
_getListVersion(
|
|
165
|
+
(await asyncCommand(`npm list ${dep} --depth=0 | grep ${dep}`)).split(' ')
|
|
157
166
|
)
|
|
158
167
|
);
|
|
168
|
+
|
|
169
|
+
// console.log('---', dep, depPair, _.get(packageVersion, 'version'), _.get(installedVersion, 'version'));
|
|
170
|
+
|
|
171
|
+
// console.log('---dep', dep, packageVersion, installedVersion);
|
|
159
172
|
const latestVersion = await getLatestVersion(dep);
|
|
160
173
|
const isEqual = _isEqual(installedVersion, packageVersion);
|
|
161
174
|
const isLatest = _isEqual(packageVersion, latestVersion);
|
|
@@ -227,7 +240,7 @@ Main.prototype.process = async function (options) {
|
|
|
227
240
|
return response;
|
|
228
241
|
}
|
|
229
242
|
|
|
230
|
-
if (self.options.global || self.options.g) {
|
|
243
|
+
if (self.options.global || self.options.g || self.options._.includes('global')) {
|
|
231
244
|
const parentPath = `/Users/${os.userInfo().username}/.nvm/versions/node`;
|
|
232
245
|
const versions = jetpack.list(parentPath);
|
|
233
246
|
const currentNode = process.versions.node;
|
|
@@ -303,7 +316,7 @@ Main.prototype.process = async function (options) {
|
|
|
303
316
|
return response;
|
|
304
317
|
}
|
|
305
318
|
|
|
306
|
-
if (self.options.clean) {
|
|
319
|
+
if (self.options.clean || self.options._.includes('clean')) {
|
|
307
320
|
const NPM_INSTALL_FLAG = self.options['no-optional'] || self.options['nooptional'] ? '--no-optional' : ''
|
|
308
321
|
const NPM_CLEAN = `rm -fr node_modules && rm -fr package-lock.json && npm cache clean --force && npm install ${NPM_INSTALL_FLAG} && npm rb`;
|
|
309
322
|
|
|
@@ -318,7 +331,7 @@ Main.prototype.process = async function (options) {
|
|
|
318
331
|
})
|
|
319
332
|
}
|
|
320
333
|
|
|
321
|
-
if (self.options.bump) {
|
|
334
|
+
if (self.options.bump || self.options._.includes('bump')) {
|
|
322
335
|
return bump(self);
|
|
323
336
|
}
|
|
324
337
|
|
|
@@ -397,7 +410,9 @@ function _isEqual(v1, v2) {
|
|
|
397
410
|
}
|
|
398
411
|
}
|
|
399
412
|
|
|
400
|
-
function
|
|
413
|
+
function _getListVersion(v) {
|
|
414
|
+
v = v.filter(i => i !== '\n');
|
|
415
|
+
v = v[v.length - 1]
|
|
401
416
|
v = v.split('@');
|
|
402
417
|
return v[v.length - 1]
|
|
403
418
|
}
|
package/package.json
CHANGED
package/src/index.js
CHANGED
|
@@ -24,6 +24,14 @@ const os = require('os');
|
|
|
24
24
|
// const npm = require('npm');
|
|
25
25
|
|
|
26
26
|
function Main() {
|
|
27
|
+
const self = this;
|
|
28
|
+
|
|
29
|
+
self.options = {};
|
|
30
|
+
self.npu_packageJSON = {};
|
|
31
|
+
self.proj_path = null;
|
|
32
|
+
self.proj_packageJSONPath = null;
|
|
33
|
+
self.proj_packageJSON = {};
|
|
34
|
+
self.proj_allDependencies = {};
|
|
27
35
|
|
|
28
36
|
}
|
|
29
37
|
|
|
@@ -43,8 +51,9 @@ Main.prototype.process = async function (options) {
|
|
|
43
51
|
self.proj_path = process.cwd();
|
|
44
52
|
self.proj_packageJSONPath = path.resolve(self.proj_path, './package.json');
|
|
45
53
|
self.proj_packageJSON = require(self.proj_packageJSONPath);
|
|
46
|
-
self.
|
|
47
|
-
self.
|
|
54
|
+
self.proj_allDependencies.pairs = _.merge({}, self.proj_packageJSON.peerDependencies, self.proj_packageJSON.devDependencies, self.proj_packageJSON.dependencies);
|
|
55
|
+
self.proj_allDependencies.list = Object.keys(self.proj_allDependencies.pairs);
|
|
56
|
+
|
|
48
57
|
} catch (e) {
|
|
49
58
|
self.proj_packageJSON = {
|
|
50
59
|
name: 'Unknown Name',
|
|
@@ -73,29 +82,29 @@ Main.prototype.process = async function (options) {
|
|
|
73
82
|
self.options[arg] = argv[arg]
|
|
74
83
|
});
|
|
75
84
|
|
|
76
|
-
if (self.options.d || self.options.debug || process.env.NPU_LOG === 'true') {
|
|
85
|
+
if (self.options.d || self.options.debug || self.options._.includes('debug') || process.env.NPU_LOG === 'true') {
|
|
77
86
|
console.log('argv', argv);
|
|
78
87
|
console.log('options', self.options);
|
|
79
88
|
}
|
|
80
89
|
|
|
81
|
-
if (self.options.wait) {
|
|
90
|
+
if (self.options.wait || self.options._.includes('wait')) {
|
|
82
91
|
const time = parseInt(typeof self.options.wait === 'number' ? self.options.wait : 1000);
|
|
83
92
|
self.log(chalk.blue(`Waiting ${time}...`));
|
|
84
93
|
await powertools.wait(time);
|
|
85
94
|
self.log(chalk.green(`Done waiting`));
|
|
86
95
|
}
|
|
87
96
|
|
|
88
|
-
if (self.options.v || self.options.version) {
|
|
97
|
+
if (self.options.v || self.options.version || self.options._.includes('version')) {
|
|
89
98
|
self.log(chalk.blue(`Node Power User is v${chalk.bold(self.npu_packageJSON.version)}`));
|
|
90
99
|
return self.npu_packageJSON.version;
|
|
91
100
|
}
|
|
92
101
|
|
|
93
|
-
if (self.options.pv || self.options.project || self.options['project-version']) {
|
|
102
|
+
if (self.options.pv || self.options.project || self.options['project-version'] || self.options._.includes('project')) {
|
|
94
103
|
self.log(chalk.blue(`The current project (${chalk.bold(self.proj_packageJSON.name)}) is v${chalk.bold(self.proj_packageJSON.version)}`));
|
|
95
104
|
return self.proj_packageJSON.version;
|
|
96
105
|
}
|
|
97
106
|
|
|
98
|
-
if (self.options.lp || self.options.listpackages || self.options['list-packages']) {
|
|
107
|
+
if (self.options.lp || self.options.listpackages || self.options['list-packages'] || self.options._.includes('listpackages')) {
|
|
99
108
|
self.log(chalk.blue.bold(`Dependencies:`));
|
|
100
109
|
|
|
101
110
|
Object.keys(self.proj_packageJSON.dependencies || {})
|
|
@@ -122,7 +131,7 @@ Main.prototype.process = async function (options) {
|
|
|
122
131
|
};
|
|
123
132
|
}
|
|
124
133
|
|
|
125
|
-
if (self.options.out || self.options.outdated || self.options.match) {
|
|
134
|
+
if (self.options.out || self.options.outdated || self.options.match || self.options._.includes('out') || self.options._.includes('outdated') || self.options._.includes('match')) {
|
|
126
135
|
// self.log(chalk.blue.bold(`Outdated:`));
|
|
127
136
|
// self.log(chalk.green(`name: package = installed`));
|
|
128
137
|
|
|
@@ -140,22 +149,26 @@ Main.prototype.process = async function (options) {
|
|
|
140
149
|
},
|
|
141
150
|
}
|
|
142
151
|
const progress = new ProgressBar.SingleBar({}, ProgressBar.Presets.shades_classic);
|
|
143
|
-
progress.start(self.
|
|
152
|
+
progress.start(self.proj_allDependencies.list.length, 0);
|
|
144
153
|
|
|
145
154
|
const response = {};
|
|
146
155
|
|
|
147
156
|
let bumpCommand = '';
|
|
148
157
|
|
|
149
|
-
for (var i = 0; i < self.
|
|
158
|
+
for (var i = 0; i < self.proj_allDependencies.list.length; i++) {
|
|
150
159
|
progress.update(i);
|
|
151
|
-
const dep = self.
|
|
152
|
-
const
|
|
160
|
+
const dep = self.proj_allDependencies.list[i];
|
|
161
|
+
const depPair = self.proj_allDependencies.pairs[dep];
|
|
162
|
+
const packageVersion = _coerce(depPair);
|
|
153
163
|
const installedVersion = _coerce(
|
|
154
|
-
|
|
155
|
-
(await asyncCommand(`npm list ${dep} --depth=0 | grep ${dep}`))
|
|
156
|
-
.split(' ')[1]
|
|
164
|
+
_getListVersion(
|
|
165
|
+
(await asyncCommand(`npm list ${dep} --depth=0 | grep ${dep}`)).split(' ')
|
|
157
166
|
)
|
|
158
167
|
);
|
|
168
|
+
|
|
169
|
+
// console.log('---', dep, depPair, _.get(packageVersion, 'version'), _.get(installedVersion, 'version'));
|
|
170
|
+
|
|
171
|
+
// console.log('---dep', dep, packageVersion, installedVersion);
|
|
159
172
|
const latestVersion = await getLatestVersion(dep);
|
|
160
173
|
const isEqual = _isEqual(installedVersion, packageVersion);
|
|
161
174
|
const isLatest = _isEqual(packageVersion, latestVersion);
|
|
@@ -227,7 +240,7 @@ Main.prototype.process = async function (options) {
|
|
|
227
240
|
return response;
|
|
228
241
|
}
|
|
229
242
|
|
|
230
|
-
if (self.options.global || self.options.g) {
|
|
243
|
+
if (self.options.global || self.options.g || self.options._.includes('global')) {
|
|
231
244
|
const parentPath = `/Users/${os.userInfo().username}/.nvm/versions/node`;
|
|
232
245
|
const versions = jetpack.list(parentPath);
|
|
233
246
|
const currentNode = process.versions.node;
|
|
@@ -303,7 +316,7 @@ Main.prototype.process = async function (options) {
|
|
|
303
316
|
return response;
|
|
304
317
|
}
|
|
305
318
|
|
|
306
|
-
if (self.options.clean) {
|
|
319
|
+
if (self.options.clean || self.options._.includes('clean')) {
|
|
307
320
|
const NPM_INSTALL_FLAG = self.options['no-optional'] || self.options['nooptional'] ? '--no-optional' : ''
|
|
308
321
|
const NPM_CLEAN = `rm -fr node_modules && rm -fr package-lock.json && npm cache clean --force && npm install ${NPM_INSTALL_FLAG} && npm rb`;
|
|
309
322
|
|
|
@@ -318,7 +331,7 @@ Main.prototype.process = async function (options) {
|
|
|
318
331
|
})
|
|
319
332
|
}
|
|
320
333
|
|
|
321
|
-
if (self.options.bump) {
|
|
334
|
+
if (self.options.bump || self.options._.includes('bump')) {
|
|
322
335
|
return bump(self);
|
|
323
336
|
}
|
|
324
337
|
|
|
@@ -397,7 +410,9 @@ function _isEqual(v1, v2) {
|
|
|
397
410
|
}
|
|
398
411
|
}
|
|
399
412
|
|
|
400
|
-
function
|
|
413
|
+
function _getListVersion(v) {
|
|
414
|
+
v = v.filter(i => i !== '\n');
|
|
415
|
+
v = v[v.length - 1]
|
|
401
416
|
v = v.split('@');
|
|
402
417
|
return v[v.length - 1]
|
|
403
418
|
}
|