jgb-cli
Version:
```shell npm i -g jgb-cli #全局安装 ```
43 lines • 3.61 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
var tslib_1 = require("tslib");
var chalk_1 = require("chalk");
var request = require("request");
var semver = require("semver");
var pkg = require("../../package.json");
var pkgConfig = pkg;
function checkVersion() {
return tslib_1.__awaiter(this, void 0, void 0, function () {
return tslib_1.__generator(this, function (_a) {
/**
* 检测当前node版本是否符合要求
*/
if (!semver.satisfies(process.version, pkgConfig.engines.node)) {
return [2 /*return*/, console.log(chalk_1.default.red(' You must upgrade node to >=' +
pkgConfig.engines.node +
'.x to use jgb-cli'))];
}
return [2 /*return*/, new Promise(function (resolve) {
request({
url: 'https://registry.npmjs.org/jgb-cli',
timeout: 1000
}, function (err, res, body) {
if (!err && res.statusCode === 200) {
var latestVersion = JSON.parse(body)['dist-tags'].latest;
var localVersion = pkgConfig.version;
if (semver.lt(localVersion, latestVersion)) {
console.log(chalk_1.default.yellow(' A newer version of jgb-cli is available.'));
console.log();
console.log(' latest: ' + chalk_1.default.green(latestVersion));
console.log(' installed: ' + chalk_1.default.red(localVersion));
console.log();
}
}
resolve();
});
})];
});
});
}
exports.default = checkVersion;
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2hlY2tWZXJzaW9uLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL3V0aWxzL2NoZWNrVmVyc2lvbi50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7QUFBQSwrQkFBMEI7QUFDMUIsaUNBQW1DO0FBQ25DLCtCQUFpQztBQUNqQyx3Q0FBMEM7QUFFMUMsSUFBTSxTQUFTLEdBQVEsR0FBRyxDQUFDO0FBRTNCLFNBQThCLFlBQVk7OztZQUN4Qzs7ZUFFRztZQUNILElBQUksQ0FBQyxNQUFNLENBQUMsU0FBUyxDQUFDLE9BQU8sQ0FBQyxPQUFPLEVBQUUsU0FBUyxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsRUFBRTtnQkFDOUQsc0JBQU8sT0FBTyxDQUFDLEdBQUcsQ0FDaEIsZUFBSyxDQUFDLEdBQUcsQ0FDUCwrQkFBK0I7d0JBQzdCLFNBQVMsQ0FBQyxPQUFPLENBQUMsSUFBSTt3QkFDdEIsbUJBQW1CLENBQ3RCLENBQ0YsRUFBQzthQUNIO1lBQ0Qsc0JBQU8sSUFBSSxPQUFPLENBQUMsVUFBQSxPQUFPO29CQUN4QixPQUFPLENBQ0w7d0JBQ0UsR0FBRyxFQUFFLG9DQUFvQzt3QkFDekMsT0FBTyxFQUFFLElBQUk7cUJBQ2QsRUFDRCxVQUFDLEdBQUcsRUFBRSxHQUFHLEVBQUUsSUFBSTt3QkFDYixJQUFJLENBQUMsR0FBRyxJQUFJLEdBQUcsQ0FBQyxVQUFVLEtBQUssR0FBRyxFQUFFOzRCQUNsQyxJQUFNLGFBQWEsR0FBRyxJQUFJLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxDQUFDLFdBQVcsQ0FBQyxDQUFDLE1BQU0sQ0FBQzs0QkFDM0QsSUFBTSxZQUFZLEdBQUcsU0FBUyxDQUFDLE9BQU8sQ0FBQzs0QkFDdkMsSUFBSSxNQUFNLENBQUMsRUFBRSxDQUFDLFlBQVksRUFBRSxhQUFhLENBQUMsRUFBRTtnQ0FDMUMsT0FBTyxDQUFDLEdBQUcsQ0FDVCxlQUFLLENBQUMsTUFBTSxDQUFDLDRDQUE0QyxDQUFDLENBQzNELENBQUM7Z0NBQ0YsT0FBTyxDQUFDLEdBQUcsRUFBRSxDQUFDO2dDQUNkLE9BQU8sQ0FBQyxHQUFHLENBQUMsZUFBZSxHQUFHLGVBQUssQ0FBQyxLQUFLLENBQUMsYUFBYSxDQUFDLENBQUMsQ0FBQztnQ0FDMUQsT0FBTyxDQUFDLEdBQUcsQ0FBQyxlQUFlLEdBQUcsZUFBSyxDQUFDLEdBQUcsQ0FBQyxZQUFZLENBQUMsQ0FBQyxDQUFDO2dDQUN2RCxPQUFPLENBQUMsR0FBRyxFQUFFLENBQUM7NkJBQ2Y7eUJBQ0Y7d0JBQ0QsT0FBTyxFQUFFLENBQUM7b0JBQ1osQ0FBQyxDQUNGLENBQUM7Z0JBQ0osQ0FBQyxDQUFDLEVBQUM7OztDQUNKO0FBckNELCtCQXFDQyJ9