123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170 |
- "use strict";
- exports.__esModule = true;
- var _regenerator = require("babel-runtime/regenerator");
- var _regenerator2 = _interopRequireDefault(_regenerator);
- var _getIterator2 = require("babel-runtime/core-js/get-iterator");
- var _getIterator3 = _interopRequireDefault(_getIterator2);
- var _asyncToGenerator2 = require("babel-runtime/helpers/asyncToGenerator");
- var _asyncToGenerator3 = _interopRequireDefault(_asyncToGenerator2);
- var _promise = require("babel-runtime/core-js/promise");
- var _promise2 = _interopRequireDefault(_promise);
- var _request = require("request");
- var _request2 = _interopRequireDefault(_request);
- function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
- var cache = {};
- function getInfo(packageName) {
- if (cache[packageName]) {
- return cache[packageName];
- } else {
- return cache[packageName] = new _promise2.default(function (resolve, reject) {
- _request2.default.get({
- url: "https://registry.npmjs.org/" + packageName + "/latest",
- json: true
- }, function (err, res, body) {
- if (err) {
- reject(err);
- } else {
- resolve(cache[packageName] = body);
- }
- });
- });
- }
- }
- exports.default = function () {
- var _ref = (0, _asyncToGenerator3.default)(_regenerator2.default.mark(function _callee(packages) {
- var filteredPackages, promises, _iterator, _isArray, _i, _ref2, _pkg, infos, messages, i, info, pkg;
- return _regenerator2.default.wrap(function _callee$(_context) {
- while (1) {
- switch (_context.prev = _context.next) {
- case 0:
- filteredPackages = [];
- promises = [];
- _iterator = packages, _isArray = Array.isArray(_iterator), _i = 0, _iterator = _isArray ? _iterator : (0, _getIterator3.default)(_iterator);
- case 3:
- if (!_isArray) {
- _context.next = 9;
- break;
- }
- if (!(_i >= _iterator.length)) {
- _context.next = 6;
- break;
- }
- return _context.abrupt("break", 20);
- case 6:
- _ref2 = _iterator[_i++];
- _context.next = 13;
- break;
- case 9:
- _i = _iterator.next();
- if (!_i.done) {
- _context.next = 12;
- break;
- }
- return _context.abrupt("break", 20);
- case 12:
- _ref2 = _i.value;
- case 13:
- _pkg = _ref2;
- if (!(_pkg.name.indexOf("babel-") !== 0)) {
- _context.next = 16;
- break;
- }
- return _context.abrupt("continue", 18);
- case 16:
- promises.push(getInfo(_pkg.name));
- filteredPackages.push(_pkg);
- case 18:
- _context.next = 3;
- break;
- case 20:
- _context.next = 22;
- return _promise2.default.all(promises);
- case 22:
- infos = _context.sent;
- messages = [];
- i = 0;
- case 25:
- if (!(i < infos.length)) {
- _context.next = 34;
- break;
- }
- info = infos[i];
- pkg = filteredPackages[i];
- if (!(pkg.name === "babel-runtime")) {
- _context.next = 30;
- break;
- }
- return _context.abrupt("continue", 31);
- case 30:
- if (info.version !== pkg.version) {
- messages.push(pkg.name + " - Latest is " + info.version + ". Local version is " + pkg.version);
- }
- case 31:
- i++;
- _context.next = 25;
- break;
- case 34:
- if (!messages.length) {
- _context.next = 38;
- break;
- }
- return _context.abrupt("return", [false, "We found some outdated packages:\n\n- " + messages.join("\n- ")]);
- case 38:
- return _context.abrupt("return", [true, "All babel packages appear to be up to date"]);
- case 39:
- case "end":
- return _context.stop();
- }
- }
- }, _callee, this);
- }));
- return function (_x) {
- return _ref.apply(this, arguments);
- };
- }();
- module.exports = exports["default"];
|