verdaccio
Version:
A lightweight private npm proxy registry
36 lines (33 loc) • 4.16 kB
JavaScript
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.setupUpLinks = setupUpLinks;
exports.updateVersionsHiddenUpLink = updateVersionsHiddenUpLink;
var _upStorage = _interopRequireDefault(require("./up-storage"));
function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
/**
* Set up the Up Storage for each link.
*/
function setupUpLinks(config) {
const uplinks = {};
for (const uplinkName in config.uplinks) {
if (Object.prototype.hasOwnProperty.call(config.uplinks, uplinkName)) {
// instance for each up-link definition
const proxy = new _upStorage.default(config.uplinks[uplinkName], config);
proxy.upname = uplinkName;
uplinks[uplinkName] = proxy;
}
}
return uplinks;
}
function updateVersionsHiddenUpLink(versions, upLink) {
for (const i in versions) {
if (Object.prototype.hasOwnProperty.call(versions, i)) {
const version = versions[i];
// holds a "hidden" value to be used by the package storage.
version[Symbol.for('__verdaccio_uplink')] = upLink.upname;
}
}
}
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJfdXBTdG9yYWdlIiwiX2ludGVyb3BSZXF1aXJlRGVmYXVsdCIsInJlcXVpcmUiLCJlIiwiX19lc01vZHVsZSIsImRlZmF1bHQiLCJzZXR1cFVwTGlua3MiLCJjb25maWciLCJ1cGxpbmtzIiwidXBsaW5rTmFtZSIsIk9iamVjdCIsInByb3RvdHlwZSIsImhhc093blByb3BlcnR5IiwiY2FsbCIsInByb3h5IiwiUHJveHlTdG9yYWdlIiwidXBuYW1lIiwidXBkYXRlVmVyc2lvbnNIaWRkZW5VcExpbmsiLCJ2ZXJzaW9ucyIsInVwTGluayIsImkiLCJ2ZXJzaW9uIiwiU3ltYm9sIiwiZm9yIl0sInNvdXJjZXMiOlsiLi4vLi4vc3JjL2xpYi91cGxpbmstdXRpbC50cyJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb25maWcsIFZlcnNpb25zIH0gZnJvbSAnQHZlcmRhY2Npby90eXBlcyc7XG5cbmltcG9ydCBQcm94eVN0b3JhZ2UgZnJvbSAnLi91cC1zdG9yYWdlJztcblxuLyoqXG4gKiBTZXQgdXAgdGhlIFVwIFN0b3JhZ2UgZm9yIGVhY2ggbGluay5cbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIHNldHVwVXBMaW5rcyhjb25maWc6IENvbmZpZyk6IFJlY29yZDxzdHJpbmcsIFByb3h5U3RvcmFnZT4ge1xuICBjb25zdCB1cGxpbmtzID0ge307XG5cbiAgZm9yIChjb25zdCB1cGxpbmtOYW1lIGluIGNvbmZpZy51cGxpbmtzKSB7XG4gICAgaWYgKE9iamVjdC5wcm90b3R5cGUuaGFzT3duUHJvcGVydHkuY2FsbChjb25maWcudXBsaW5rcywgdXBsaW5rTmFtZSkpIHtcbiAgICAgIC8vIGluc3RhbmNlIGZvciBlYWNoIHVwLWxpbmsgZGVmaW5pdGlvblxuICAgICAgY29uc3QgcHJveHkgPSBuZXcgUHJveHlTdG9yYWdlKGNvbmZpZy51cGxpbmtzW3VwbGlua05hbWVdLCBjb25maWcpO1xuICAgICAgcHJveHkudXBuYW1lID0gdXBsaW5rTmFtZTtcblxuICAgICAgdXBsaW5rc1t1cGxpbmtOYW1lXSA9IHByb3h5O1xuICAgIH1cbiAgfVxuXG4gIHJldHVybiB1cGxpbmtzO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gdXBkYXRlVmVyc2lvbnNIaWRkZW5VcExpbmsodmVyc2lvbnM6IFZlcnNpb25zLCB1cExpbmspOiB2b2lkIHtcbiAgZm9yIChjb25zdCBpIGluIHZlcnNpb25zKSB7XG4gICAgaWYgKE9iamVjdC5wcm90b3R5cGUuaGFzT3duUHJvcGVydHkuY2FsbCh2ZXJzaW9ucywgaSkpIHtcbiAgICAgIGNvbnN0IHZlcnNpb24gPSB2ZXJzaW9uc1tpXTtcblxuICAgICAgLy8gaG9sZHMgYSBcImhpZGRlblwiIHZhbHVlIHRvIGJlIHVzZWQgYnkgdGhlIHBhY2thZ2Ugc3RvcmFnZS5cblxuICAgICAgdmVyc2lvbltTeW1ib2wuZm9yKCdfX3ZlcmRhY2Npb191cGxpbmsnKV0gPSB1cExpbmsudXBuYW1lO1xuICAgIH1cbiAgfVxufVxuIl0sIm1hcHBpbmdzIjoiOzs7Ozs7O0FBRUEsSUFBQUEsVUFBQSxHQUFBQyxzQkFBQSxDQUFBQyxPQUFBO0FBQXdDLFNBQUFELHVCQUFBRSxDQUFBLFdBQUFBLENBQUEsSUFBQUEsQ0FBQSxDQUFBQyxVQUFBLEdBQUFELENBQUEsS0FBQUUsT0FBQSxFQUFBRixDQUFBO0FBRXhDO0FBQ0E7QUFDQTtBQUNPLFNBQVNHLFlBQVlBLENBQUNDLE1BQWMsRUFBZ0M7RUFDekUsTUFBTUMsT0FBTyxHQUFHLENBQUMsQ0FBQztFQUVsQixLQUFLLE1BQU1DLFVBQVUsSUFBSUYsTUFBTSxDQUFDQyxPQUFPLEVBQUU7SUFDdkMsSUFBSUUsTUFBTSxDQUFDQyxTQUFTLENBQUNDLGNBQWMsQ0FBQ0MsSUFBSSxDQUFDTixNQUFNLENBQUNDLE9BQU8sRUFBRUMsVUFBVSxDQUFDLEVBQUU7TUFDcEU7TUFDQSxNQUFNSyxLQUFLLEdBQUcsSUFBSUMsa0JBQVksQ0FBQ1IsTUFBTSxDQUFDQyxPQUFPLENBQUNDLFVBQVUsQ0FBQyxFQUFFRixNQUFNLENBQUM7TUFDbEVPLEtBQUssQ0FBQ0UsTUFBTSxHQUFHUCxVQUFVO01BRXpCRCxPQUFPLENBQUNDLFVBQVUsQ0FBQyxHQUFHSyxLQUFLO0lBQzdCO0VBQ0Y7RUFFQSxPQUFPTixPQUFPO0FBQ2hCO0FBRU8sU0FBU1MsMEJBQTBCQSxDQUFDQyxRQUFrQixFQUFFQyxNQUFNLEVBQVE7RUFDM0UsS0FBSyxNQUFNQyxDQUFDLElBQUlGLFFBQVEsRUFBRTtJQUN4QixJQUFJUixNQUFNLENBQUNDLFNBQVMsQ0FBQ0MsY0FBYyxDQUFDQyxJQUFJLENBQUNLLFFBQVEsRUFBRUUsQ0FBQyxDQUFDLEVBQUU7TUFDckQsTUFBTUMsT0FBTyxHQUFHSCxRQUFRLENBQUNFLENBQUMsQ0FBQzs7TUFFM0I7O01BRUFDLE9BQU8sQ0FBQ0MsTUFBTSxDQUFDQyxHQUFHLENBQUMsb0JBQW9CLENBQUMsQ0FBQyxHQUFHSixNQUFNLENBQUNILE1BQU07SUFDM0Q7RUFDRjtBQUNGIiwiaWdub3JlTGlzdCI6W119
;