1 |
|
2 | const request = require('request')
|
3 | const semver = require('semver')
|
4 | const chalk = require('chalk')
|
5 | const packageConfig = require('../package.json')
|
6 |
|
7 | module.exports = done => {
|
8 |
|
9 | if (!semver.satisfies(process.version, packageConfig.engines.node)) {
|
10 | return console.log(chalk.red(
|
11 | ' You must upgrade node to >=' + packageConfig.engines.node + '.x to use talent-cli'
|
12 | ))
|
13 | }
|
14 |
|
15 | request({
|
16 | url: 'https://registry.npmjs.org/@talentui/cli',
|
17 | timeout: 1000
|
18 | }, (err, res, body) => {
|
19 | if (!err && res.statusCode === 200) {
|
20 | const latestVersion = JSON.parse(body)['dist-tags'].latest
|
21 | const localVersion = packageConfig.version
|
22 | if (semver.lt(localVersion, latestVersion)) {
|
23 | console.log(chalk.yellow(' A newer version of @talentui/cli is available.'))
|
24 | console.log()
|
25 | console.log(' latest: ' + chalk.green(latestVersion))
|
26 | console.log(' installed: ' + chalk.red(localVersion))
|
27 | console.log()
|
28 | }
|
29 | }
|
30 | done()
|
31 | })
|
32 | }
|