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.
Files changed (3) hide show
  1. package/dist/index.js +34 -19
  2. package/package.json +1 -1
  3. 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.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);
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.proj_packageJSON.allDependenciesKeys.length, 0);
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.proj_packageJSON.allDependenciesKeys.length; i++) {
158
+ for (var i = 0; i < self.proj_allDependencies.list.length; i++) {
150
159
  progress.update(i);
151
- const dep = self.proj_packageJSON.allDependenciesKeys[i];
152
- const packageVersion = _coerce(self.proj_packageJSON.allDependencies[dep]);
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
- _getVersion(
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 _getVersion(v) {
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
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "node-power-user",
3
- "version": "0.0.31",
3
+ "version": "0.0.33",
4
4
  "description": "Easy tools for every Node.js developer!",
5
5
  "main": "dist/index.js",
6
6
  "bin": {
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.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);
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.proj_packageJSON.allDependenciesKeys.length, 0);
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.proj_packageJSON.allDependenciesKeys.length; i++) {
158
+ for (var i = 0; i < self.proj_allDependencies.list.length; i++) {
150
159
  progress.update(i);
151
- const dep = self.proj_packageJSON.allDependenciesKeys[i];
152
- const packageVersion = _coerce(self.proj_packageJSON.allDependencies[dep]);
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
- _getVersion(
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 _getVersion(v) {
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
  }