verdaccio
Version:
A lightweight private npm proxy registry
58 lines (55 loc) • 8.87 kB
JavaScript
"use strict";
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.default = _default;
var _express = _interopRequireDefault(require("express"));
var _middleware = require("@verdaccio/middleware");
var _distTags = _interopRequireDefault(require("./api/dist-tags"));
var _package = _interopRequireDefault(require("./api/package"));
var _ping = _interopRequireDefault(require("./api/ping"));
var _publish = _interopRequireDefault(require("./api/publish"));
var _search = _interopRequireDefault(require("./api/search"));
var _stars = _interopRequireDefault(require("./api/stars"));
var _user = _interopRequireDefault(require("./api/user"));
var _profile = _interopRequireDefault(require("./api/v1/profile"));
var _search2 = _interopRequireDefault(require("./api/v1/search"));
var _token = _interopRequireDefault(require("./api/v1/token"));
var _whoami = _interopRequireDefault(require("./api/whoami"));
function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
function _default(config, auth, storage) {
const app = _express.default.Router();
// validate all of these params as a package name
// this might be too harsh, so ask if it causes trouble
app.param('package', _middleware.validatePackage);
app.param('filename', _middleware.validateName);
app.param('tag', _middleware.validateName);
app.param('version', _middleware.validateName);
app.param('revision', _middleware.validateName);
app.param('token', _middleware.validateName);
// these can't be safely put into express url for some reason
// TODO: For some reason? what reason?
app.param('_rev', (0, _middleware.match)(/^-rev$/));
app.param('org_couchdb_user', (0, _middleware.match)(/^org\.couchdb\.user:/));
app.use(auth.apiJWTmiddleware());
app.use(_express.default.json({
strict: false,
limit: config.max_body_size || '10mb'
}));
app.use((0, _middleware.antiLoop)(config));
// encode / in a scoped package name to be matched as a single parameter in routes
app.use(_middleware.encodeScopePackage);
(0, _whoami.default)(app);
(0, _profile.default)(app, auth, config);
(0, _search.default)(app, auth, storage);
(0, _user.default)(app, auth, config);
(0, _distTags.default)(app, auth, storage);
(0, _publish.default)(app, auth, storage, config);
(0, _ping.default)(app);
(0, _stars.default)(app, storage);
(0, _search2.default)(app, auth, storage);
(0, _token.default)(app, auth, storage, config);
(0, _package.default)(app, auth, storage, config);
return app;
}
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJfZXhwcmVzcyIsIl9pbnRlcm9wUmVxdWlyZURlZmF1bHQiLCJyZXF1aXJlIiwiX21pZGRsZXdhcmUiLCJfZGlzdFRhZ3MiLCJfcGFja2FnZSIsIl9waW5nIiwiX3B1Ymxpc2giLCJfc2VhcmNoIiwiX3N0YXJzIiwiX3VzZXIiLCJfcHJvZmlsZSIsIl9zZWFyY2gyIiwiX3Rva2VuIiwiX3dob2FtaSIsImUiLCJfX2VzTW9kdWxlIiwiZGVmYXVsdCIsIl9kZWZhdWx0IiwiY29uZmlnIiwiYXV0aCIsInN0b3JhZ2UiLCJhcHAiLCJleHByZXNzIiwiUm91dGVyIiwicGFyYW0iLCJ2YWxpZGF0ZVBhY2thZ2UiLCJ2YWxpZGF0ZU5hbWUiLCJtYXRjaCIsInVzZSIsImFwaUpXVG1pZGRsZXdhcmUiLCJqc29uIiwic3RyaWN0IiwibGltaXQiLCJtYXhfYm9keV9zaXplIiwiYW50aUxvb3AiLCJlbmNvZGVTY29wZVBhY2thZ2UiLCJ3aG9hbWkiLCJwcm9maWxlIiwic2VhcmNoIiwidXNlciIsImRpc3RUYWdzIiwicHVibGlzaCIsInBpbmciLCJzdGFycyIsInYxU2VhcmNoIiwidG9rZW4iLCJwa2ciXSwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvYXBpL2VuZHBvaW50L2luZGV4LnRzIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCBleHByZXNzIGZyb20gJ2V4cHJlc3MnO1xuXG5pbXBvcnQgdHlwZSB7IEF1dGggfSBmcm9tICdAdmVyZGFjY2lvL2F1dGgnO1xuaW1wb3J0IHtcbiAgYW50aUxvb3AsXG4gIGVuY29kZVNjb3BlUGFja2FnZSxcbiAgbWF0Y2gsXG4gIHZhbGlkYXRlTmFtZSxcbiAgdmFsaWRhdGVQYWNrYWdlLFxufSBmcm9tICdAdmVyZGFjY2lvL21pZGRsZXdhcmUnO1xuaW1wb3J0IHR5cGUgeyBDb25maWcgfSBmcm9tICdAdmVyZGFjY2lvL3R5cGVzJztcblxuaW1wb3J0IHR5cGUgU3RvcmFnZSBmcm9tICcuLi8uLi9saWIvc3RvcmFnZSc7XG5pbXBvcnQgZGlzdFRhZ3MgZnJvbSAnLi9hcGkvZGlzdC10YWdzJztcbmltcG9ydCBwa2cgZnJvbSAnLi9hcGkvcGFja2FnZSc7XG5pbXBvcnQgcGluZyBmcm9tICcuL2FwaS9waW5nJztcbmltcG9ydCBwdWJsaXNoIGZyb20gJy4vYXBpL3B1Ymxpc2gnO1xuaW1wb3J0IHNlYXJjaCBmcm9tICcuL2FwaS9zZWFyY2gnO1xuaW1wb3J0IHN0YXJzIGZyb20gJy4vYXBpL3N0YXJzJztcbmltcG9ydCB1c2VyIGZyb20gJy4vYXBpL3VzZXInO1xuaW1wb3J0IHByb2ZpbGUgZnJvbSAnLi9hcGkvdjEvcHJvZmlsZSc7XG5pbXBvcnQgdjFTZWFyY2ggZnJvbSAnLi9hcGkvdjEvc2VhcmNoJztcbmltcG9ydCB0b2tlbiBmcm9tICcuL2FwaS92MS90b2tlbic7XG5pbXBvcnQgd2hvYW1pIGZyb20gJy4vYXBpL3dob2FtaSc7XG5cbmV4cG9ydCBkZWZhdWx0IGZ1bmN0aW9uIChjb25maWc6IENvbmZpZywgYXV0aDogQXV0aCwgc3RvcmFnZTogU3RvcmFnZSkge1xuICBjb25zdCBhcHAgPSBleHByZXNzLlJvdXRlcigpO1xuXG4gIC8vIHZhbGlkYXRlIGFsbCBvZiB0aGVzZSBwYXJhbXMgYXMgYSBwYWNrYWdlIG5hbWVcbiAgLy8gdGhpcyBtaWdodCBiZSB0b28gaGFyc2gsIHNvIGFzayBpZiBpdCBjYXVzZXMgdHJvdWJsZVxuICBhcHAucGFyYW0oJ3BhY2thZ2UnLCB2YWxpZGF0ZVBhY2thZ2UpO1xuICBhcHAucGFyYW0oJ2ZpbGVuYW1lJywgdmFsaWRhdGVOYW1lKTtcbiAgYXBwLnBhcmFtKCd0YWcnLCB2YWxpZGF0ZU5hbWUpO1xuICBhcHAucGFyYW0oJ3ZlcnNpb24nLCB2YWxpZGF0ZU5hbWUpO1xuICBhcHAucGFyYW0oJ3JldmlzaW9uJywgdmFsaWRhdGVOYW1lKTtcbiAgYXBwLnBhcmFtKCd0b2tlbicsIHZhbGlkYXRlTmFtZSk7XG5cbiAgLy8gdGhlc2UgY2FuJ3QgYmUgc2FmZWx5IHB1dCBpbnRvIGV4cHJlc3MgdXJsIGZvciBzb21lIHJlYXNvblxuICAvLyBUT0RPOiBGb3Igc29tZSByZWFzb24/IHdoYXQgcmVhc29uP1xuICBhcHAucGFyYW0oJ19yZXYnLCBtYXRjaCgvXi1yZXYkLykpO1xuICBhcHAucGFyYW0oJ29yZ19jb3VjaGRiX3VzZXInLCBtYXRjaCgvXm9yZ1xcLmNvdWNoZGJcXC51c2VyOi8pKTtcblxuICBhcHAudXNlKGF1dGguYXBpSldUbWlkZGxld2FyZSgpKTtcbiAgYXBwLnVzZShleHByZXNzLmpzb24oeyBzdHJpY3Q6IGZhbHNlLCBsaW1pdDogY29uZmlnLm1heF9ib2R5X3NpemUgfHwgJzEwbWInIH0pKTtcbiAgYXBwLnVzZShhbnRpTG9vcChjb25maWcpKTtcbiAgLy8gZW5jb2RlIC8gaW4gYSBzY29wZWQgcGFja2FnZSBuYW1lIHRvIGJlIG1hdGNoZWQgYXMgYSBzaW5nbGUgcGFyYW1ldGVyIGluIHJvdXRlc1xuICBhcHAudXNlKGVuY29kZVNjb3BlUGFja2FnZSk7XG4gIHdob2FtaShhcHApO1xuICBwcm9maWxlKGFwcCwgYXV0aCwgY29uZmlnKTtcbiAgc2VhcmNoKGFwcCwgYXV0aCwgc3RvcmFnZSk7XG4gIHVzZXIoYXBwLCBhdXRoLCBjb25maWcpO1xuICBkaXN0VGFncyhhcHAsIGF1dGgsIHN0b3JhZ2UpO1xuICBwdWJsaXNoKGFwcCwgYXV0aCwgc3RvcmFnZSwgY29uZmlnKTtcbiAgcGluZyhhcHApO1xuICBzdGFycyhhcHAsIHN0b3JhZ2UpO1xuICB2MVNlYXJjaChhcHAsIGF1dGgsIHN0b3JhZ2UpO1xuICB0b2tlbihhcHAsIGF1dGgsIHN0b3JhZ2UsIGNvbmZpZyk7XG4gIHBrZyhhcHAsIGF1dGgsIHN0b3JhZ2UsIGNvbmZpZyk7XG4gIHJldHVybiBhcHA7XG59XG4iXSwibWFwcGluZ3MiOiI7Ozs7OztBQUFBLElBQUFBLFFBQUEsR0FBQUMsc0JBQUEsQ0FBQUMsT0FBQTtBQUdBLElBQUFDLFdBQUEsR0FBQUQsT0FBQTtBQVVBLElBQUFFLFNBQUEsR0FBQUgsc0JBQUEsQ0FBQUMsT0FBQTtBQUNBLElBQUFHLFFBQUEsR0FBQUosc0JBQUEsQ0FBQUMsT0FBQTtBQUNBLElBQUFJLEtBQUEsR0FBQUwsc0JBQUEsQ0FBQUMsT0FBQTtBQUNBLElBQUFLLFFBQUEsR0FBQU4sc0JBQUEsQ0FBQUMsT0FBQTtBQUNBLElBQUFNLE9BQUEsR0FBQVAsc0JBQUEsQ0FBQUMsT0FBQTtBQUNBLElBQUFPLE1BQUEsR0FBQVIsc0JBQUEsQ0FBQUMsT0FBQTtBQUNBLElBQUFRLEtBQUEsR0FBQVQsc0JBQUEsQ0FBQUMsT0FBQTtBQUNBLElBQUFTLFFBQUEsR0FBQVYsc0JBQUEsQ0FBQUMsT0FBQTtBQUNBLElBQUFVLFFBQUEsR0FBQVgsc0JBQUEsQ0FBQUMsT0FBQTtBQUNBLElBQUFXLE1BQUEsR0FBQVosc0JBQUEsQ0FBQUMsT0FBQTtBQUNBLElBQUFZLE9BQUEsR0FBQWIsc0JBQUEsQ0FBQUMsT0FBQTtBQUFrQyxTQUFBRCx1QkFBQWMsQ0FBQSxXQUFBQSxDQUFBLElBQUFBLENBQUEsQ0FBQUMsVUFBQSxHQUFBRCxDQUFBLEtBQUFFLE9BQUEsRUFBQUYsQ0FBQTtBQUVuQixTQUFBRyxTQUFVQyxNQUFjLEVBQUVDLElBQVUsRUFBRUMsT0FBZ0IsRUFBRTtFQUNyRSxNQUFNQyxHQUFHLEdBQUdDLGdCQUFPLENBQUNDLE1BQU0sQ0FBQyxDQUFDOztFQUU1QjtFQUNBO0VBQ0FGLEdBQUcsQ0FBQ0csS0FBSyxDQUFDLFNBQVMsRUFBRUMsMkJBQWUsQ0FBQztFQUNyQ0osR0FBRyxDQUFDRyxLQUFLLENBQUMsVUFBVSxFQUFFRSx3QkFBWSxDQUFDO0VBQ25DTCxHQUFHLENBQUNHLEtBQUssQ0FBQyxLQUFLLEVBQUVFLHdCQUFZLENBQUM7RUFDOUJMLEdBQUcsQ0FBQ0csS0FBSyxDQUFDLFNBQVMsRUFBRUUsd0JBQVksQ0FBQztFQUNsQ0wsR0FBRyxDQUFDRyxLQUFLLENBQUMsVUFBVSxFQUFFRSx3QkFBWSxDQUFDO0VBQ25DTCxHQUFHLENBQUNHLEtBQUssQ0FBQyxPQUFPLEVBQUVFLHdCQUFZLENBQUM7O0VBRWhDO0VBQ0E7RUFDQUwsR0FBRyxDQUFDRyxLQUFLLENBQUMsTUFBTSxFQUFFLElBQUFHLGlCQUFLLEVBQUMsUUFBUSxDQUFDLENBQUM7RUFDbENOLEdBQUcsQ0FBQ0csS0FBSyxDQUFDLGtCQUFrQixFQUFFLElBQUFHLGlCQUFLLEVBQUMsc0JBQXNCLENBQUMsQ0FBQztFQUU1RE4sR0FBRyxDQUFDTyxHQUFHLENBQUNULElBQUksQ0FBQ1UsZ0JBQWdCLENBQUMsQ0FBQyxDQUFDO0VBQ2hDUixHQUFHLENBQUNPLEdBQUcsQ0FBQ04sZ0JBQU8sQ0FBQ1EsSUFBSSxDQUFDO0lBQUVDLE1BQU0sRUFBRSxLQUFLO0lBQUVDLEtBQUssRUFBRWQsTUFBTSxDQUFDZSxhQUFhLElBQUk7RUFBTyxDQUFDLENBQUMsQ0FBQztFQUMvRVosR0FBRyxDQUFDTyxHQUFHLENBQUMsSUFBQU0sb0JBQVEsRUFBQ2hCLE1BQU0sQ0FBQyxDQUFDO0VBQ3pCO0VBQ0FHLEdBQUcsQ0FBQ08sR0FBRyxDQUFDTyw4QkFBa0IsQ0FBQztFQUMzQixJQUFBQyxlQUFNLEVBQUNmLEdBQUcsQ0FBQztFQUNYLElBQUFnQixnQkFBTyxFQUFDaEIsR0FBRyxFQUFFRixJQUFJLEVBQUVELE1BQU0sQ0FBQztFQUMxQixJQUFBb0IsZUFBTSxFQUFDakIsR0FBRyxFQUFFRixJQUFJLEVBQUVDLE9BQU8sQ0FBQztFQUMxQixJQUFBbUIsYUFBSSxFQUFDbEIsR0FBRyxFQUFFRixJQUFJLEVBQUVELE1BQU0sQ0FBQztFQUN2QixJQUFBc0IsaUJBQVEsRUFBQ25CLEdBQUcsRUFBRUYsSUFBSSxFQUFFQyxPQUFPLENBQUM7RUFDNUIsSUFBQXFCLGdCQUFPLEVBQUNwQixHQUFHLEVBQUVGLElBQUksRUFBRUMsT0FBTyxFQUFFRixNQUFNLENBQUM7RUFDbkMsSUFBQXdCLGFBQUksRUFBQ3JCLEdBQUcsQ0FBQztFQUNULElBQUFzQixjQUFLLEVBQUN0QixHQUFHLEVBQUVELE9BQU8sQ0FBQztFQUNuQixJQUFBd0IsZ0JBQVEsRUFBQ3ZCLEdBQUcsRUFBRUYsSUFBSSxFQUFFQyxPQUFPLENBQUM7RUFDNUIsSUFBQXlCLGNBQUssRUFBQ3hCLEdBQUcsRUFBRUYsSUFBSSxFQUFFQyxPQUFPLEVBQUVGLE1BQU0sQ0FBQztFQUNqQyxJQUFBNEIsZ0JBQUcsRUFBQ3pCLEdBQUcsRUFBRUYsSUFBSSxFQUFFQyxPQUFPLEVBQUVGLE1BQU0sQ0FBQztFQUMvQixPQUFPRyxHQUFHO0FBQ1oiLCJpZ25vcmVMaXN0IjpbXX0=