UNPKG

verdaccio

Version:

A lightweight private npm proxy registry

39 lines (38 loc) 4.8 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.mergeVersions = mergeVersions; var _lodash = _interopRequireDefault(require("lodash")); var _semver = _interopRequireDefault(require("semver")); var _constants = require("./constants"); function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; } /** * Function gets a local info and an info from uplinks and tries to merge it exported for unit tests only. * @param {*} local * @param {*} up * @param {*} config * @static */ function mergeVersions(local, up) { // copy new versions to a cache // NOTE: if a certain version was updated, we can't refresh it reliably for (const i in up.versions) { if (_lodash.default.isNil(local.versions[i])) { local.versions[i] = up.versions[i]; } } for (const i in up[_constants.DIST_TAGS]) { if (local[_constants.DIST_TAGS][i] !== up[_constants.DIST_TAGS][i]) { if (!local[_constants.DIST_TAGS][i] || _semver.default.lte(local[_constants.DIST_TAGS][i], up[_constants.DIST_TAGS][i])) { local[_constants.DIST_TAGS][i] = up[_constants.DIST_TAGS][i]; } if (i === 'latest' && local[_constants.DIST_TAGS][i] === up[_constants.DIST_TAGS][i]) { // if remote has more fresh package, we should borrow its readme local.readme = up.readme; } } } } //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJfbG9kYXNoIiwiX2ludGVyb3BSZXF1aXJlRGVmYXVsdCIsInJlcXVpcmUiLCJfc2VtdmVyIiwiX2NvbnN0YW50cyIsImUiLCJfX2VzTW9kdWxlIiwiZGVmYXVsdCIsIm1lcmdlVmVyc2lvbnMiLCJsb2NhbCIsInVwIiwiaSIsInZlcnNpb25zIiwiXyIsImlzTmlsIiwiRElTVF9UQUdTIiwic2VtdmVyIiwibHRlIiwicmVhZG1lIl0sInNvdXJjZXMiOlsiLi4vLi4vc3JjL2xpYi9tZXRhZGF0YS11dGlscy50cyJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgXyBmcm9tICdsb2Rhc2gnO1xuaW1wb3J0IHNlbXZlciBmcm9tICdzZW12ZXInO1xuXG5pbXBvcnQgeyBQYWNrYWdlIH0gZnJvbSAnQHZlcmRhY2Npby90eXBlcyc7XG5cbmltcG9ydCB7IERJU1RfVEFHUyB9IGZyb20gJy4vY29uc3RhbnRzJztcblxuLyoqXG4gKiBGdW5jdGlvbiBnZXRzIGEgbG9jYWwgaW5mbyBhbmQgYW4gaW5mbyBmcm9tIHVwbGlua3MgYW5kIHRyaWVzIHRvIG1lcmdlIGl0XG4gZXhwb3J0ZWQgZm9yIHVuaXQgdGVzdHMgb25seS5cbiAgKiBAcGFyYW0geyp9IGxvY2FsXG4gICogQHBhcmFtIHsqfSB1cFxuICAqIEBwYXJhbSB7Kn0gY29uZmlnXG4gICogQHN0YXRpY1xuICAqL1xuZXhwb3J0IGZ1bmN0aW9uIG1lcmdlVmVyc2lvbnMobG9jYWw6IFBhY2thZ2UsIHVwOiBQYWNrYWdlKSB7XG4gIC8vIGNvcHkgbmV3IHZlcnNpb25zIHRvIGEgY2FjaGVcbiAgLy8gTk9URTogaWYgYSBjZXJ0YWluIHZlcnNpb24gd2FzIHVwZGF0ZWQsIHdlIGNhbid0IHJlZnJlc2ggaXQgcmVsaWFibHlcbiAgZm9yIChjb25zdCBpIGluIHVwLnZlcnNpb25zKSB7XG4gICAgaWYgKF8uaXNOaWwobG9jYWwudmVyc2lvbnNbaV0pKSB7XG4gICAgICBsb2NhbC52ZXJzaW9uc1tpXSA9IHVwLnZlcnNpb25zW2ldO1xuICAgIH1cbiAgfVxuXG4gIGZvciAoY29uc3QgaSBpbiB1cFtESVNUX1RBR1NdKSB7XG4gICAgaWYgKGxvY2FsW0RJU1RfVEFHU11baV0gIT09IHVwW0RJU1RfVEFHU11baV0pIHtcbiAgICAgIGlmICghbG9jYWxbRElTVF9UQUdTXVtpXSB8fCBzZW12ZXIubHRlKGxvY2FsW0RJU1RfVEFHU11baV0sIHVwW0RJU1RfVEFHU11baV0pKSB7XG4gICAgICAgIGxvY2FsW0RJU1RfVEFHU11baV0gPSB1cFtESVNUX1RBR1NdW2ldO1xuICAgICAgfVxuICAgICAgaWYgKGkgPT09ICdsYXRlc3QnICYmIGxvY2FsW0RJU1RfVEFHU11baV0gPT09IHVwW0RJU1RfVEFHU11baV0pIHtcbiAgICAgICAgLy8gaWYgcmVtb3RlIGhhcyBtb3JlIGZyZXNoIHBhY2thZ2UsIHdlIHNob3VsZCBib3Jyb3cgaXRzIHJlYWRtZVxuICAgICAgICBsb2NhbC5yZWFkbWUgPSB1cC5yZWFkbWU7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iXSwibWFwcGluZ3MiOiI7Ozs7OztBQUFBLElBQUFBLE9BQUEsR0FBQUMsc0JBQUEsQ0FBQUMsT0FBQTtBQUNBLElBQUFDLE9BQUEsR0FBQUYsc0JBQUEsQ0FBQUMsT0FBQTtBQUlBLElBQUFFLFVBQUEsR0FBQUYsT0FBQTtBQUF3QyxTQUFBRCx1QkFBQUksQ0FBQSxXQUFBQSxDQUFBLElBQUFBLENBQUEsQ0FBQUMsVUFBQSxHQUFBRCxDQUFBLEtBQUFFLE9BQUEsRUFBQUYsQ0FBQTtBQUV4QztBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ08sU0FBU0csYUFBYUEsQ0FBQ0MsS0FBYyxFQUFFQyxFQUFXLEVBQUU7RUFDekQ7RUFDQTtFQUNBLEtBQUssTUFBTUMsQ0FBQyxJQUFJRCxFQUFFLENBQUNFLFFBQVEsRUFBRTtJQUMzQixJQUFJQyxlQUFDLENBQUNDLEtBQUssQ0FBQ0wsS0FBSyxDQUFDRyxRQUFRLENBQUNELENBQUMsQ0FBQyxDQUFDLEVBQUU7TUFDOUJGLEtBQUssQ0FBQ0csUUFBUSxDQUFDRCxDQUFDLENBQUMsR0FBR0QsRUFBRSxDQUFDRSxRQUFRLENBQUNELENBQUMsQ0FBQztJQUNwQztFQUNGO0VBRUEsS0FBSyxNQUFNQSxDQUFDLElBQUlELEVBQUUsQ0FBQ0ssb0JBQVMsQ0FBQyxFQUFFO0lBQzdCLElBQUlOLEtBQUssQ0FBQ00sb0JBQVMsQ0FBQyxDQUFDSixDQUFDLENBQUMsS0FBS0QsRUFBRSxDQUFDSyxvQkFBUyxDQUFDLENBQUNKLENBQUMsQ0FBQyxFQUFFO01BQzVDLElBQUksQ0FBQ0YsS0FBSyxDQUFDTSxvQkFBUyxDQUFDLENBQUNKLENBQUMsQ0FBQyxJQUFJSyxlQUFNLENBQUNDLEdBQUcsQ0FBQ1IsS0FBSyxDQUFDTSxvQkFBUyxDQUFDLENBQUNKLENBQUMsQ0FBQyxFQUFFRCxFQUFFLENBQUNLLG9CQUFTLENBQUMsQ0FBQ0osQ0FBQyxDQUFDLENBQUMsRUFBRTtRQUM3RUYsS0FBSyxDQUFDTSxvQkFBUyxDQUFDLENBQUNKLENBQUMsQ0FBQyxHQUFHRCxFQUFFLENBQUNLLG9CQUFTLENBQUMsQ0FBQ0osQ0FBQyxDQUFDO01BQ3hDO01BQ0EsSUFBSUEsQ0FBQyxLQUFLLFFBQVEsSUFBSUYsS0FBSyxDQUFDTSxvQkFBUyxDQUFDLENBQUNKLENBQUMsQ0FBQyxLQUFLRCxFQUFFLENBQUNLLG9CQUFTLENBQUMsQ0FBQ0osQ0FBQyxDQUFDLEVBQUU7UUFDOUQ7UUFDQUYsS0FBSyxDQUFDUyxNQUFNLEdBQUdSLEVBQUUsQ0FBQ1EsTUFBTTtNQUMxQjtJQUNGO0VBQ0Y7QUFDRiIsImlnbm9yZUxpc3QiOltdfQ==