@verdaccio/middleware 8.0.0-next-8.6 → 8.0.0-next-8.7
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +12 -0
- package/build/index.d.ts +2 -0
- package/build/index.js +24 -0
- package/build/index.js.map +1 -1
- package/build/middlewares/allow.js +1 -2
- package/build/middlewares/allow.js.map +1 -1
- package/build/middlewares/api_urls.d.ts +37 -0
- package/build/middlewares/api_urls.js +53 -0
- package/build/middlewares/api_urls.js.map +1 -0
- package/build/middlewares/web/web-urls.d.ts +10 -0
- package/build/middlewares/web/web-urls.js +18 -0
- package/build/middlewares/web/web-urls.js.map +1 -0
- package/package.json +8 -8
- package/src/index.ts +2 -0
- package/src/middlewares/allow.ts +2 -3
- package/src/middlewares/api_urls.ts +45 -0
- package/src/middlewares/web/web-urls.ts +10 -0
package/CHANGELOG.md
CHANGED
|
@@ -1,5 +1,17 @@
|
|
|
1
1
|
# @verdaccio/middleware
|
|
2
2
|
|
|
3
|
+
## 8.0.0-next-8.7
|
|
4
|
+
|
|
5
|
+
### Patch Changes
|
|
6
|
+
|
|
7
|
+
- 589ea7f: chore: move tarball utils to core
|
|
8
|
+
- 139861e: fix: crashes with path-to-regexp v0.1.12 express
|
|
9
|
+
- Updated dependencies [589ea7f]
|
|
10
|
+
- @verdaccio/core@8.0.0-next-8.7
|
|
11
|
+
- @verdaccio/utils@8.1.0-next-8.7
|
|
12
|
+
- @verdaccio/config@8.0.0-next-8.7
|
|
13
|
+
- @verdaccio/url@13.0.0-next-8.7
|
|
14
|
+
|
|
3
15
|
## 8.0.0-next-8.6
|
|
4
16
|
|
|
5
17
|
### Patch Changes
|
package/build/index.d.ts
CHANGED
|
@@ -14,3 +14,5 @@ export { webMiddleware, renderWebMiddleware } from './middlewares/web';
|
|
|
14
14
|
export { errorReportingMiddleware, handleError } from './middlewares/error';
|
|
15
15
|
export { log, LOG_STATUS_MESSAGE, LOG_VERDACCIO_BYTES, LOG_VERDACCIO_ERROR, } from './middlewares/log';
|
|
16
16
|
export * from './types';
|
|
17
|
+
export * from './middlewares/api_urls';
|
|
18
|
+
export * from './middlewares/web/web-urls';
|
package/build/index.js
CHANGED
|
@@ -179,4 +179,28 @@ Object.keys(_types).forEach(function (key) {
|
|
|
179
179
|
}
|
|
180
180
|
});
|
|
181
181
|
});
|
|
182
|
+
var _api_urls = require("./middlewares/api_urls");
|
|
183
|
+
Object.keys(_api_urls).forEach(function (key) {
|
|
184
|
+
if (key === "default" || key === "__esModule") return;
|
|
185
|
+
if (Object.prototype.hasOwnProperty.call(_exportNames, key)) return;
|
|
186
|
+
if (key in exports && exports[key] === _api_urls[key]) return;
|
|
187
|
+
Object.defineProperty(exports, key, {
|
|
188
|
+
enumerable: true,
|
|
189
|
+
get: function () {
|
|
190
|
+
return _api_urls[key];
|
|
191
|
+
}
|
|
192
|
+
});
|
|
193
|
+
});
|
|
194
|
+
var _webUrls = require("./middlewares/web/web-urls");
|
|
195
|
+
Object.keys(_webUrls).forEach(function (key) {
|
|
196
|
+
if (key === "default" || key === "__esModule") return;
|
|
197
|
+
if (Object.prototype.hasOwnProperty.call(_exportNames, key)) return;
|
|
198
|
+
if (key in exports && exports[key] === _webUrls[key]) return;
|
|
199
|
+
Object.defineProperty(exports, key, {
|
|
200
|
+
enumerable: true,
|
|
201
|
+
get: function () {
|
|
202
|
+
return _webUrls[key];
|
|
203
|
+
}
|
|
204
|
+
});
|
|
205
|
+
});
|
|
182
206
|
//# sourceMappingURL=index.js.map
|
package/build/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","names":["_match","require","_securityHeaders","_validation","_media","_makeUrlRelative","_encodePkg","_json","_antiLoop","_final","_allow","_rateLimit","_userAgent","_web","_error","_log","_types","Object","keys","forEach","key","prototype","hasOwnProperty","call","_exportNames","exports","defineProperty","enumerable","get"],"sources":["../src/index.ts"],"sourcesContent":["export { match } from './middlewares/match';\nexport { setSecurityWebHeaders } from './middlewares/security-headers';\nexport { validateName, validatePackage } from './middlewares/validation';\nexport { media } from './middlewares/media';\nexport { makeURLrelative } from './middlewares/make-url-relative';\nexport { encodeScopePackage } from './middlewares/encode-pkg';\nexport { expectJson } from './middlewares/json';\nexport { antiLoop } from './middlewares/antiLoop';\nexport { final } from './middlewares/final';\nexport { allow } from './middlewares/allow';\nexport { rateLimit } from './middlewares/rate-limit';\nexport { userAgent } from './middlewares/user-agent';\nexport { webMiddleware, renderWebMiddleware } from './middlewares/web';\nexport { errorReportingMiddleware, handleError } from './middlewares/error';\nexport {\n log,\n LOG_STATUS_MESSAGE,\n LOG_VERDACCIO_BYTES,\n LOG_VERDACCIO_ERROR,\n} from './middlewares/log';\nexport * from './types';\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,IAAAA,MAAA,GAAAC,OAAA;AACA,IAAAC,gBAAA,GAAAD,OAAA;AACA,IAAAE,WAAA,GAAAF,OAAA;AACA,IAAAG,MAAA,GAAAH,OAAA;AACA,IAAAI,gBAAA,GAAAJ,OAAA;AACA,IAAAK,UAAA,GAAAL,OAAA;AACA,IAAAM,KAAA,GAAAN,OAAA;AACA,IAAAO,SAAA,GAAAP,OAAA;AACA,IAAAQ,MAAA,GAAAR,OAAA;AACA,IAAAS,MAAA,GAAAT,OAAA;AACA,IAAAU,UAAA,GAAAV,OAAA;AACA,IAAAW,UAAA,GAAAX,OAAA;AACA,IAAAY,IAAA,GAAAZ,OAAA;AACA,IAAAa,MAAA,GAAAb,OAAA;AACA,IAAAc,IAAA,GAAAd,OAAA;AAMA,IAAAe,MAAA,GAAAf,OAAA;AAAAgB,MAAA,CAAAC,IAAA,CAAAF,MAAA,EAAAG,OAAA,WAAAC,GAAA;EAAA,IAAAA,GAAA,kBAAAA,GAAA;EAAA,IAAAH,MAAA,CAAAI,SAAA,CAAAC,cAAA,CAAAC,IAAA,CAAAC,YAAA,EAAAJ,GAAA;EAAA,IAAAA,GAAA,IAAAK,OAAA,IAAAA,OAAA,CAAAL,GAAA,MAAAJ,MAAA,CAAAI,GAAA;EAAAH,MAAA,CAAAS,cAAA,CAAAD,OAAA,EAAAL,GAAA;IAAAO,UAAA;IAAAC,GAAA,WAAAA,CAAA;MAAA,OAAAZ,MAAA,CAAAI,GAAA;IAAA;EAAA;AAAA","ignoreList":[]}
|
|
1
|
+
{"version":3,"file":"index.js","names":["_match","require","_securityHeaders","_validation","_media","_makeUrlRelative","_encodePkg","_json","_antiLoop","_final","_allow","_rateLimit","_userAgent","_web","_error","_log","_types","Object","keys","forEach","key","prototype","hasOwnProperty","call","_exportNames","exports","defineProperty","enumerable","get","_api_urls","_webUrls"],"sources":["../src/index.ts"],"sourcesContent":["export { match } from './middlewares/match';\nexport { setSecurityWebHeaders } from './middlewares/security-headers';\nexport { validateName, validatePackage } from './middlewares/validation';\nexport { media } from './middlewares/media';\nexport { makeURLrelative } from './middlewares/make-url-relative';\nexport { encodeScopePackage } from './middlewares/encode-pkg';\nexport { expectJson } from './middlewares/json';\nexport { antiLoop } from './middlewares/antiLoop';\nexport { final } from './middlewares/final';\nexport { allow } from './middlewares/allow';\nexport { rateLimit } from './middlewares/rate-limit';\nexport { userAgent } from './middlewares/user-agent';\nexport { webMiddleware, renderWebMiddleware } from './middlewares/web';\nexport { errorReportingMiddleware, handleError } from './middlewares/error';\nexport {\n log,\n LOG_STATUS_MESSAGE,\n LOG_VERDACCIO_BYTES,\n LOG_VERDACCIO_ERROR,\n} from './middlewares/log';\nexport * from './types';\nexport * from './middlewares/api_urls';\nexport * from './middlewares/web/web-urls';\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,IAAAA,MAAA,GAAAC,OAAA;AACA,IAAAC,gBAAA,GAAAD,OAAA;AACA,IAAAE,WAAA,GAAAF,OAAA;AACA,IAAAG,MAAA,GAAAH,OAAA;AACA,IAAAI,gBAAA,GAAAJ,OAAA;AACA,IAAAK,UAAA,GAAAL,OAAA;AACA,IAAAM,KAAA,GAAAN,OAAA;AACA,IAAAO,SAAA,GAAAP,OAAA;AACA,IAAAQ,MAAA,GAAAR,OAAA;AACA,IAAAS,MAAA,GAAAT,OAAA;AACA,IAAAU,UAAA,GAAAV,OAAA;AACA,IAAAW,UAAA,GAAAX,OAAA;AACA,IAAAY,IAAA,GAAAZ,OAAA;AACA,IAAAa,MAAA,GAAAb,OAAA;AACA,IAAAc,IAAA,GAAAd,OAAA;AAMA,IAAAe,MAAA,GAAAf,OAAA;AAAAgB,MAAA,CAAAC,IAAA,CAAAF,MAAA,EAAAG,OAAA,WAAAC,GAAA;EAAA,IAAAA,GAAA,kBAAAA,GAAA;EAAA,IAAAH,MAAA,CAAAI,SAAA,CAAAC,cAAA,CAAAC,IAAA,CAAAC,YAAA,EAAAJ,GAAA;EAAA,IAAAA,GAAA,IAAAK,OAAA,IAAAA,OAAA,CAAAL,GAAA,MAAAJ,MAAA,CAAAI,GAAA;EAAAH,MAAA,CAAAS,cAAA,CAAAD,OAAA,EAAAL,GAAA;IAAAO,UAAA;IAAAC,GAAA,WAAAA,CAAA;MAAA,OAAAZ,MAAA,CAAAI,GAAA;IAAA;EAAA;AAAA;AACA,IAAAS,SAAA,GAAA5B,OAAA;AAAAgB,MAAA,CAAAC,IAAA,CAAAW,SAAA,EAAAV,OAAA,WAAAC,GAAA;EAAA,IAAAA,GAAA,kBAAAA,GAAA;EAAA,IAAAH,MAAA,CAAAI,SAAA,CAAAC,cAAA,CAAAC,IAAA,CAAAC,YAAA,EAAAJ,GAAA;EAAA,IAAAA,GAAA,IAAAK,OAAA,IAAAA,OAAA,CAAAL,GAAA,MAAAS,SAAA,CAAAT,GAAA;EAAAH,MAAA,CAAAS,cAAA,CAAAD,OAAA,EAAAL,GAAA;IAAAO,UAAA;IAAAC,GAAA,WAAAA,CAAA;MAAA,OAAAC,SAAA,CAAAT,GAAA;IAAA;EAAA;AAAA;AACA,IAAAU,QAAA,GAAA7B,OAAA;AAAAgB,MAAA,CAAAC,IAAA,CAAAY,QAAA,EAAAX,OAAA,WAAAC,GAAA;EAAA,IAAAA,GAAA,kBAAAA,GAAA;EAAA,IAAAH,MAAA,CAAAI,SAAA,CAAAC,cAAA,CAAAC,IAAA,CAAAC,YAAA,EAAAJ,GAAA;EAAA,IAAAA,GAAA,IAAAK,OAAA,IAAAA,OAAA,CAAAL,GAAA,MAAAU,QAAA,CAAAV,GAAA;EAAAH,MAAA,CAAAS,cAAA,CAAAD,OAAA,EAAAL,GAAA;IAAAO,UAAA;IAAAC,GAAA,WAAAA,CAAA;MAAA,OAAAE,QAAA,CAAAV,GAAA;IAAA;EAAA;AAAA","ignoreList":[]}
|
|
@@ -6,7 +6,6 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
6
6
|
exports.allow = allow;
|
|
7
7
|
var _debug = _interopRequireDefault(require("debug"));
|
|
8
8
|
var _core = require("@verdaccio/core");
|
|
9
|
-
var _utils = require("@verdaccio/utils");
|
|
10
9
|
function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
|
|
11
10
|
const debug = (0, _debug.default)('verdaccio:middleware:allow');
|
|
12
11
|
function allow(auth, options = {
|
|
@@ -23,7 +22,7 @@ function allow(auth, options = {
|
|
|
23
22
|
return function (req, res, next) {
|
|
24
23
|
req.pause();
|
|
25
24
|
const packageName = req.params.scope ? `@${req.params.scope}/${req.params.package}` : req.params.package;
|
|
26
|
-
const packageVersion = req.params.filename ?
|
|
25
|
+
const packageVersion = req.params.filename ? _core.tarballUtils.getVersionFromTarball(req.params.filename) : req.params.version ? req.params.version : undefined;
|
|
27
26
|
const remote_user = req.remote_user;
|
|
28
27
|
debug('check if user %o can %o package %o version %o', remote_user?.name, action, packageName, packageVersion);
|
|
29
28
|
beforeAll?.({
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"allow.js","names":["_debug","_interopRequireDefault","require","_core","
|
|
1
|
+
{"version":3,"file":"allow.js","names":["_debug","_interopRequireDefault","require","_core","e","__esModule","default","debug","buildDebug","allow","auth","options","beforeAll","_a","_b","afterAll","action","req","res","next","pause","packageName","params","scope","package","packageVersion","filename","tarballUtils","getVersionFromTarball","version","undefined","remote_user","name","user","error","allowed","resume","errorUtils","getInternalError","API_ERROR","PLUGIN_ERROR"],"sources":["../../src/middlewares/allow.ts"],"sourcesContent":["import buildDebug from 'debug';\n\nimport { API_ERROR, errorUtils, tarballUtils } from '@verdaccio/core';\n\nimport { $NextFunctionVer, $RequestExtend, $ResponseExtend } from '../types';\n\nconst debug = buildDebug('verdaccio:middleware:allow');\n\nexport function allow<T>(\n auth: T,\n options = {\n // eslint-disable-next-line @typescript-eslint/no-unused-vars\n beforeAll: (_a: any, _b: any) => {},\n // eslint-disable-next-line @typescript-eslint/no-unused-vars\n afterAll: (_a: any, _b: any) => {},\n }\n): Function {\n const { beforeAll, afterAll } = options;\n return function (action: string): Function {\n return function (req: $RequestExtend, res: $ResponseExtend, next: $NextFunctionVer): void {\n req.pause();\n const packageName = req.params.scope\n ? `@${req.params.scope}/${req.params.package}`\n : req.params.package;\n const packageVersion = req.params.filename\n ? tarballUtils.getVersionFromTarball(req.params.filename)\n : req.params.version\n ? req.params.version\n : undefined;\n const remote_user = req.remote_user;\n debug(\n 'check if user %o can %o package %o version %o',\n remote_user?.name,\n action,\n packageName,\n packageVersion\n );\n beforeAll?.(\n { action, user: remote_user?.name },\n `[middleware/allow][@{action}] allow for @{user}`\n );\n auth['allow_' + action](\n { packageName, packageVersion },\n remote_user,\n function (error, allowed): void {\n req.resume();\n if (error) {\n debug('user is NOT allowed to %o', action);\n next(error);\n } else if (allowed) {\n debug('user is allowed to %o', action);\n afterAll?.(\n { action, user: remote_user?.name },\n `[middleware/allow][@{action}] allowed for @{user}`\n );\n next();\n } else {\n // last plugin (that's our built-in one) returns either\n // cb(err) or cb(null, true), so this should never happen\n throw errorUtils.getInternalError(API_ERROR.PLUGIN_ERROR);\n }\n }\n );\n };\n };\n}\n"],"mappings":";;;;;;AAAA,IAAAA,MAAA,GAAAC,sBAAA,CAAAC,OAAA;AAEA,IAAAC,KAAA,GAAAD,OAAA;AAAsE,SAAAD,uBAAAG,CAAA,WAAAA,CAAA,IAAAA,CAAA,CAAAC,UAAA,GAAAD,CAAA,KAAAE,OAAA,EAAAF,CAAA;AAItE,MAAMG,KAAK,GAAG,IAAAC,cAAU,EAAC,4BAA4B,CAAC;AAE/C,SAASC,KAAKA,CACnBC,IAAO,EACPC,OAAO,GAAG;EACR;EACAC,SAAS,EAAEA,CAACC,EAAO,EAAEC,EAAO,KAAK,CAAC,CAAC;EACnC;EACAC,QAAQ,EAAEA,CAACF,EAAO,EAAEC,EAAO,KAAK,CAAC;AACnC,CAAC,EACS;EACV,MAAM;IAAEF,SAAS;IAAEG;EAAS,CAAC,GAAGJ,OAAO;EACvC,OAAO,UAAUK,MAAc,EAAY;IACzC,OAAO,UAAUC,GAAmB,EAAEC,GAAoB,EAAEC,IAAsB,EAAQ;MACxFF,GAAG,CAACG,KAAK,CAAC,CAAC;MACX,MAAMC,WAAW,GAAGJ,GAAG,CAACK,MAAM,CAACC,KAAK,GAChC,IAAIN,GAAG,CAACK,MAAM,CAACC,KAAK,IAAIN,GAAG,CAACK,MAAM,CAACE,OAAO,EAAE,GAC5CP,GAAG,CAACK,MAAM,CAACE,OAAO;MACtB,MAAMC,cAAc,GAAGR,GAAG,CAACK,MAAM,CAACI,QAAQ,GACtCC,kBAAY,CAACC,qBAAqB,CAACX,GAAG,CAACK,MAAM,CAACI,QAAQ,CAAC,GACvDT,GAAG,CAACK,MAAM,CAACO,OAAO,GAChBZ,GAAG,CAACK,MAAM,CAACO,OAAO,GAClBC,SAAS;MACf,MAAMC,WAAW,GAAGd,GAAG,CAACc,WAAW;MACnCxB,KAAK,CACH,+CAA+C,EAC/CwB,WAAW,EAAEC,IAAI,EACjBhB,MAAM,EACNK,WAAW,EACXI,cACF,CAAC;MACDb,SAAS,GACP;QAAEI,MAAM;QAAEiB,IAAI,EAAEF,WAAW,EAAEC;MAAK,CAAC,EACnC,iDACF,CAAC;MACDtB,IAAI,CAAC,QAAQ,GAAGM,MAAM,CAAC,CACrB;QAAEK,WAAW;QAAEI;MAAe,CAAC,EAC/BM,WAAW,EACX,UAAUG,KAAK,EAAEC,OAAO,EAAQ;QAC9BlB,GAAG,CAACmB,MAAM,CAAC,CAAC;QACZ,IAAIF,KAAK,EAAE;UACT3B,KAAK,CAAC,2BAA2B,EAAES,MAAM,CAAC;UAC1CG,IAAI,CAACe,KAAK,CAAC;QACb,CAAC,MAAM,IAAIC,OAAO,EAAE;UAClB5B,KAAK,CAAC,uBAAuB,EAAES,MAAM,CAAC;UACtCD,QAAQ,GACN;YAAEC,MAAM;YAAEiB,IAAI,EAAEF,WAAW,EAAEC;UAAK,CAAC,EACnC,mDACF,CAAC;UACDb,IAAI,CAAC,CAAC;QACR,CAAC,MAAM;UACL;UACA;UACA,MAAMkB,gBAAU,CAACC,gBAAgB,CAACC,eAAS,CAACC,YAAY,CAAC;QAC3D;MACF,CACF,CAAC;IACH,CAAC;EACH,CAAC;AACH","ignoreList":[]}
|
|
@@ -0,0 +1,37 @@
|
|
|
1
|
+
export declare enum USER_API_ENDPOINTS {
|
|
2
|
+
whoami = "/-/whoami",
|
|
3
|
+
get_user = "/-/user/:org_couchdb_user",
|
|
4
|
+
add_user = "/-/user/:org_couchdb_user/:_rev?/:revision?",
|
|
5
|
+
user_token = "/-/user/token/*"
|
|
6
|
+
}
|
|
7
|
+
export declare enum STARS_API_ENDPOINTS {
|
|
8
|
+
get_user_starred_packages = "/-/_view/starredByUser"
|
|
9
|
+
}
|
|
10
|
+
export declare enum SEARCH_API_ENDPOINTS {
|
|
11
|
+
search = "/-/v1/search",
|
|
12
|
+
deprecated_search = "/-/all(/since)?"
|
|
13
|
+
}
|
|
14
|
+
export declare enum PUBLISH_API_ENDPOINTS {
|
|
15
|
+
add_package = "/:package",
|
|
16
|
+
publish_package = "/:package/-rev/:revision",
|
|
17
|
+
remove_tarball = "/:package/-/:filename/-rev/:revision"
|
|
18
|
+
}
|
|
19
|
+
export declare enum PING_API_ENDPOINTS {
|
|
20
|
+
ping = "/-/ping"
|
|
21
|
+
}
|
|
22
|
+
export declare enum PACKAGE_API_ENDPOINTS {
|
|
23
|
+
get_package_by_version = "/:package/:version?",
|
|
24
|
+
get_package_tarball = "/:package/-/:filename"
|
|
25
|
+
}
|
|
26
|
+
export declare enum DIST_TAGS_API_ENDPOINTS {
|
|
27
|
+
tagging = "/:package/:tag",
|
|
28
|
+
tagging_package = "/-/package/:package/dist-tags/:tag",
|
|
29
|
+
get_dist_tags = "/-/package/:package/dist-tags"
|
|
30
|
+
}
|
|
31
|
+
export declare enum PROFILE_API_ENDPOINTS {
|
|
32
|
+
get_profile = "/-/npm/v1/user"
|
|
33
|
+
}
|
|
34
|
+
export declare enum TOKEN_API_ENDPOINTS {
|
|
35
|
+
get_tokens = "/-/npm/v1/tokens",
|
|
36
|
+
delete_token = "/-/npm/v1/tokens/token/:tokenKey"
|
|
37
|
+
}
|
|
@@ -0,0 +1,53 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.USER_API_ENDPOINTS = exports.TOKEN_API_ENDPOINTS = exports.STARS_API_ENDPOINTS = exports.SEARCH_API_ENDPOINTS = exports.PUBLISH_API_ENDPOINTS = exports.PROFILE_API_ENDPOINTS = exports.PING_API_ENDPOINTS = exports.PACKAGE_API_ENDPOINTS = exports.DIST_TAGS_API_ENDPOINTS = void 0;
|
|
7
|
+
let USER_API_ENDPOINTS = exports.USER_API_ENDPOINTS = /*#__PURE__*/function (USER_API_ENDPOINTS) {
|
|
8
|
+
USER_API_ENDPOINTS["whoami"] = "/-/whoami";
|
|
9
|
+
USER_API_ENDPOINTS["get_user"] = "/-/user/:org_couchdb_user";
|
|
10
|
+
USER_API_ENDPOINTS["add_user"] = "/-/user/:org_couchdb_user/:_rev?/:revision?";
|
|
11
|
+
USER_API_ENDPOINTS["user_token"] = "/-/user/token/*";
|
|
12
|
+
return USER_API_ENDPOINTS;
|
|
13
|
+
}({});
|
|
14
|
+
let STARS_API_ENDPOINTS = exports.STARS_API_ENDPOINTS = /*#__PURE__*/function (STARS_API_ENDPOINTS) {
|
|
15
|
+
STARS_API_ENDPOINTS["get_user_starred_packages"] = "/-/_view/starredByUser";
|
|
16
|
+
return STARS_API_ENDPOINTS;
|
|
17
|
+
}({});
|
|
18
|
+
let SEARCH_API_ENDPOINTS = exports.SEARCH_API_ENDPOINTS = /*#__PURE__*/function (SEARCH_API_ENDPOINTS) {
|
|
19
|
+
SEARCH_API_ENDPOINTS["search"] = "/-/v1/search";
|
|
20
|
+
SEARCH_API_ENDPOINTS["deprecated_search"] = "/-/all(/since)?";
|
|
21
|
+
return SEARCH_API_ENDPOINTS;
|
|
22
|
+
}({});
|
|
23
|
+
let PUBLISH_API_ENDPOINTS = exports.PUBLISH_API_ENDPOINTS = /*#__PURE__*/function (PUBLISH_API_ENDPOINTS) {
|
|
24
|
+
PUBLISH_API_ENDPOINTS["add_package"] = "/:package";
|
|
25
|
+
PUBLISH_API_ENDPOINTS["publish_package"] = "/:package/-rev/:revision";
|
|
26
|
+
PUBLISH_API_ENDPOINTS["remove_tarball"] = "/:package/-/:filename/-rev/:revision";
|
|
27
|
+
return PUBLISH_API_ENDPOINTS;
|
|
28
|
+
}({});
|
|
29
|
+
let PING_API_ENDPOINTS = exports.PING_API_ENDPOINTS = /*#__PURE__*/function (PING_API_ENDPOINTS) {
|
|
30
|
+
PING_API_ENDPOINTS["ping"] = "/-/ping";
|
|
31
|
+
return PING_API_ENDPOINTS;
|
|
32
|
+
}({});
|
|
33
|
+
let PACKAGE_API_ENDPOINTS = exports.PACKAGE_API_ENDPOINTS = /*#__PURE__*/function (PACKAGE_API_ENDPOINTS) {
|
|
34
|
+
PACKAGE_API_ENDPOINTS["get_package_by_version"] = "/:package/:version?";
|
|
35
|
+
PACKAGE_API_ENDPOINTS["get_package_tarball"] = "/:package/-/:filename";
|
|
36
|
+
return PACKAGE_API_ENDPOINTS;
|
|
37
|
+
}({});
|
|
38
|
+
let DIST_TAGS_API_ENDPOINTS = exports.DIST_TAGS_API_ENDPOINTS = /*#__PURE__*/function (DIST_TAGS_API_ENDPOINTS) {
|
|
39
|
+
DIST_TAGS_API_ENDPOINTS["tagging"] = "/:package/:tag";
|
|
40
|
+
DIST_TAGS_API_ENDPOINTS["tagging_package"] = "/-/package/:package/dist-tags/:tag";
|
|
41
|
+
DIST_TAGS_API_ENDPOINTS["get_dist_tags"] = "/-/package/:package/dist-tags";
|
|
42
|
+
return DIST_TAGS_API_ENDPOINTS;
|
|
43
|
+
}({});
|
|
44
|
+
let PROFILE_API_ENDPOINTS = exports.PROFILE_API_ENDPOINTS = /*#__PURE__*/function (PROFILE_API_ENDPOINTS) {
|
|
45
|
+
PROFILE_API_ENDPOINTS["get_profile"] = "/-/npm/v1/user";
|
|
46
|
+
return PROFILE_API_ENDPOINTS;
|
|
47
|
+
}({});
|
|
48
|
+
let TOKEN_API_ENDPOINTS = exports.TOKEN_API_ENDPOINTS = /*#__PURE__*/function (TOKEN_API_ENDPOINTS) {
|
|
49
|
+
TOKEN_API_ENDPOINTS["get_tokens"] = "/-/npm/v1/tokens";
|
|
50
|
+
TOKEN_API_ENDPOINTS["delete_token"] = "/-/npm/v1/tokens/token/:tokenKey";
|
|
51
|
+
return TOKEN_API_ENDPOINTS;
|
|
52
|
+
}({});
|
|
53
|
+
//# sourceMappingURL=api_urls.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"api_urls.js","names":["USER_API_ENDPOINTS","exports","STARS_API_ENDPOINTS","SEARCH_API_ENDPOINTS","PUBLISH_API_ENDPOINTS","PING_API_ENDPOINTS","PACKAGE_API_ENDPOINTS","DIST_TAGS_API_ENDPOINTS","PROFILE_API_ENDPOINTS","TOKEN_API_ENDPOINTS"],"sources":["../../src/middlewares/api_urls.ts"],"sourcesContent":["export enum USER_API_ENDPOINTS {\n whoami = '/-/whoami',\n get_user = '/-/user/:org_couchdb_user',\n add_user = '/-/user/:org_couchdb_user/:_rev?/:revision?',\n user_token = '/-/user/token/*',\n}\n\nexport enum STARS_API_ENDPOINTS {\n get_user_starred_packages = '/-/_view/starredByUser',\n}\n\nexport enum SEARCH_API_ENDPOINTS {\n search = '/-/v1/search',\n deprecated_search = '/-/all(/since)?',\n}\n\nexport enum PUBLISH_API_ENDPOINTS {\n add_package = '/:package',\n publish_package = '/:package/-rev/:revision',\n remove_tarball = '/:package/-/:filename/-rev/:revision',\n}\n\nexport enum PING_API_ENDPOINTS {\n ping = '/-/ping',\n}\n\nexport enum PACKAGE_API_ENDPOINTS {\n get_package_by_version = '/:package/:version?',\n get_package_tarball = '/:package/-/:filename',\n}\n\nexport enum DIST_TAGS_API_ENDPOINTS {\n tagging = '/:package/:tag',\n tagging_package = '/-/package/:package/dist-tags/:tag',\n get_dist_tags = '/-/package/:package/dist-tags',\n}\n\nexport enum PROFILE_API_ENDPOINTS {\n get_profile = '/-/npm/v1/user',\n}\n\nexport enum TOKEN_API_ENDPOINTS {\n get_tokens = '/-/npm/v1/tokens',\n delete_token = '/-/npm/v1/tokens/token/:tokenKey',\n}\n"],"mappings":";;;;;;IAAYA,kBAAkB,GAAAC,OAAA,CAAAD,kBAAA,0BAAlBA,kBAAkB;EAAlBA,kBAAkB;EAAlBA,kBAAkB;EAAlBA,kBAAkB;EAAlBA,kBAAkB;EAAA,OAAlBA,kBAAkB;AAAA;AAAA,IAOlBE,mBAAmB,GAAAD,OAAA,CAAAC,mBAAA,0BAAnBA,mBAAmB;EAAnBA,mBAAmB;EAAA,OAAnBA,mBAAmB;AAAA;AAAA,IAInBC,oBAAoB,GAAAF,OAAA,CAAAE,oBAAA,0BAApBA,oBAAoB;EAApBA,oBAAoB;EAApBA,oBAAoB;EAAA,OAApBA,oBAAoB;AAAA;AAAA,IAKpBC,qBAAqB,GAAAH,OAAA,CAAAG,qBAAA,0BAArBA,qBAAqB;EAArBA,qBAAqB;EAArBA,qBAAqB;EAArBA,qBAAqB;EAAA,OAArBA,qBAAqB;AAAA;AAAA,IAMrBC,kBAAkB,GAAAJ,OAAA,CAAAI,kBAAA,0BAAlBA,kBAAkB;EAAlBA,kBAAkB;EAAA,OAAlBA,kBAAkB;AAAA;AAAA,IAIlBC,qBAAqB,GAAAL,OAAA,CAAAK,qBAAA,0BAArBA,qBAAqB;EAArBA,qBAAqB;EAArBA,qBAAqB;EAAA,OAArBA,qBAAqB;AAAA;AAAA,IAKrBC,uBAAuB,GAAAN,OAAA,CAAAM,uBAAA,0BAAvBA,uBAAuB;EAAvBA,uBAAuB;EAAvBA,uBAAuB;EAAvBA,uBAAuB;EAAA,OAAvBA,uBAAuB;AAAA;AAAA,IAMvBC,qBAAqB,GAAAP,OAAA,CAAAO,qBAAA,0BAArBA,qBAAqB;EAArBA,qBAAqB;EAAA,OAArBA,qBAAqB;AAAA;AAAA,IAIrBC,mBAAmB,GAAAR,OAAA,CAAAQ,mBAAA,0BAAnBA,mBAAmB;EAAnBA,mBAAmB;EAAnBA,mBAAmB;EAAA,OAAnBA,mBAAmB;AAAA","ignoreList":[]}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
export declare enum WebUrls {
|
|
2
|
+
sidebar_scopped_package = "/sidebar/:scope/:package",
|
|
3
|
+
sidebar_package = "/sidebar/:package",
|
|
4
|
+
readme_package_scoped_version = "/package/readme/:scope/:package/:version?",
|
|
5
|
+
readme_package_version = "/package/readme/:package/:version?",
|
|
6
|
+
packages_all = "/packages",
|
|
7
|
+
user_login = "/login",
|
|
8
|
+
search = "/search/:anything",
|
|
9
|
+
reset_password = "/reset_password"
|
|
10
|
+
}
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.WebUrls = void 0;
|
|
7
|
+
let WebUrls = exports.WebUrls = /*#__PURE__*/function (WebUrls) {
|
|
8
|
+
WebUrls["sidebar_scopped_package"] = "/sidebar/:scope/:package";
|
|
9
|
+
WebUrls["sidebar_package"] = "/sidebar/:package";
|
|
10
|
+
WebUrls["readme_package_scoped_version"] = "/package/readme/:scope/:package/:version?";
|
|
11
|
+
WebUrls["readme_package_version"] = "/package/readme/:package/:version?";
|
|
12
|
+
WebUrls["packages_all"] = "/packages";
|
|
13
|
+
WebUrls["user_login"] = "/login";
|
|
14
|
+
WebUrls["search"] = "/search/:anything";
|
|
15
|
+
WebUrls["reset_password"] = "/reset_password";
|
|
16
|
+
return WebUrls;
|
|
17
|
+
}({});
|
|
18
|
+
//# sourceMappingURL=web-urls.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"web-urls.js","names":["WebUrls","exports"],"sources":["../../../src/middlewares/web/web-urls.ts"],"sourcesContent":["export enum WebUrls {\n sidebar_scopped_package = '/sidebar/:scope/:package',\n sidebar_package = '/sidebar/:package',\n readme_package_scoped_version = '/package/readme/:scope/:package/:version?',\n readme_package_version = '/package/readme/:package/:version?',\n packages_all = '/packages',\n user_login = '/login',\n search = '/search/:anything',\n reset_password = '/reset_password',\n}\n"],"mappings":";;;;;;IAAYA,OAAO,GAAAC,OAAA,CAAAD,OAAA,0BAAPA,OAAO;EAAPA,OAAO;EAAPA,OAAO;EAAPA,OAAO;EAAPA,OAAO;EAAPA,OAAO;EAAPA,OAAO;EAAPA,OAAO;EAAPA,OAAO;EAAA,OAAPA,OAAO;AAAA","ignoreList":[]}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@verdaccio/middleware",
|
|
3
|
-
"version": "8.0.0-next-8.
|
|
3
|
+
"version": "8.0.0-next-8.7",
|
|
4
4
|
"description": "express middleware utils",
|
|
5
5
|
"main": "./build/index.js",
|
|
6
6
|
"types": "build/index.d.ts",
|
|
@@ -29,12 +29,12 @@
|
|
|
29
29
|
"node": ">=18"
|
|
30
30
|
},
|
|
31
31
|
"dependencies": {
|
|
32
|
-
"@verdaccio/config": "8.0.0-next-8.
|
|
33
|
-
"@verdaccio/core": "8.0.0-next-8.
|
|
34
|
-
"@verdaccio/url": "13.0.0-next-8.
|
|
35
|
-
"@verdaccio/utils": "8.1.0-next-8.
|
|
36
|
-
"debug": "4.
|
|
37
|
-
"express": "4.21.
|
|
32
|
+
"@verdaccio/config": "8.0.0-next-8.7",
|
|
33
|
+
"@verdaccio/core": "8.0.0-next-8.7",
|
|
34
|
+
"@verdaccio/url": "13.0.0-next-8.7",
|
|
35
|
+
"@verdaccio/utils": "8.1.0-next-8.7",
|
|
36
|
+
"debug": "4.4.0",
|
|
37
|
+
"express": "4.21.2",
|
|
38
38
|
"express-rate-limit": "5.5.1",
|
|
39
39
|
"lodash": "4.17.21",
|
|
40
40
|
"lru-cache": "7.18.3",
|
|
@@ -45,7 +45,7 @@
|
|
|
45
45
|
"url": "https://opencollective.com/verdaccio"
|
|
46
46
|
},
|
|
47
47
|
"devDependencies": {
|
|
48
|
-
"@verdaccio/logger": "8.0.0-next-8.
|
|
48
|
+
"@verdaccio/logger": "8.0.0-next-8.7",
|
|
49
49
|
"body-parser": "1.20.3",
|
|
50
50
|
"supertest": "7.0.0",
|
|
51
51
|
"jsdom": "25.0.1"
|
package/src/index.ts
CHANGED
package/src/middlewares/allow.ts
CHANGED
|
@@ -1,7 +1,6 @@
|
|
|
1
1
|
import buildDebug from 'debug';
|
|
2
2
|
|
|
3
|
-
import { API_ERROR, errorUtils } from '@verdaccio/core';
|
|
4
|
-
import { getVersionFromTarball } from '@verdaccio/utils';
|
|
3
|
+
import { API_ERROR, errorUtils, tarballUtils } from '@verdaccio/core';
|
|
5
4
|
|
|
6
5
|
import { $NextFunctionVer, $RequestExtend, $ResponseExtend } from '../types';
|
|
7
6
|
|
|
@@ -24,7 +23,7 @@ export function allow<T>(
|
|
|
24
23
|
? `@${req.params.scope}/${req.params.package}`
|
|
25
24
|
: req.params.package;
|
|
26
25
|
const packageVersion = req.params.filename
|
|
27
|
-
? getVersionFromTarball(req.params.filename)
|
|
26
|
+
? tarballUtils.getVersionFromTarball(req.params.filename)
|
|
28
27
|
: req.params.version
|
|
29
28
|
? req.params.version
|
|
30
29
|
: undefined;
|
|
@@ -0,0 +1,45 @@
|
|
|
1
|
+
export enum USER_API_ENDPOINTS {
|
|
2
|
+
whoami = '/-/whoami',
|
|
3
|
+
get_user = '/-/user/:org_couchdb_user',
|
|
4
|
+
add_user = '/-/user/:org_couchdb_user/:_rev?/:revision?',
|
|
5
|
+
user_token = '/-/user/token/*',
|
|
6
|
+
}
|
|
7
|
+
|
|
8
|
+
export enum STARS_API_ENDPOINTS {
|
|
9
|
+
get_user_starred_packages = '/-/_view/starredByUser',
|
|
10
|
+
}
|
|
11
|
+
|
|
12
|
+
export enum SEARCH_API_ENDPOINTS {
|
|
13
|
+
search = '/-/v1/search',
|
|
14
|
+
deprecated_search = '/-/all(/since)?',
|
|
15
|
+
}
|
|
16
|
+
|
|
17
|
+
export enum PUBLISH_API_ENDPOINTS {
|
|
18
|
+
add_package = '/:package',
|
|
19
|
+
publish_package = '/:package/-rev/:revision',
|
|
20
|
+
remove_tarball = '/:package/-/:filename/-rev/:revision',
|
|
21
|
+
}
|
|
22
|
+
|
|
23
|
+
export enum PING_API_ENDPOINTS {
|
|
24
|
+
ping = '/-/ping',
|
|
25
|
+
}
|
|
26
|
+
|
|
27
|
+
export enum PACKAGE_API_ENDPOINTS {
|
|
28
|
+
get_package_by_version = '/:package/:version?',
|
|
29
|
+
get_package_tarball = '/:package/-/:filename',
|
|
30
|
+
}
|
|
31
|
+
|
|
32
|
+
export enum DIST_TAGS_API_ENDPOINTS {
|
|
33
|
+
tagging = '/:package/:tag',
|
|
34
|
+
tagging_package = '/-/package/:package/dist-tags/:tag',
|
|
35
|
+
get_dist_tags = '/-/package/:package/dist-tags',
|
|
36
|
+
}
|
|
37
|
+
|
|
38
|
+
export enum PROFILE_API_ENDPOINTS {
|
|
39
|
+
get_profile = '/-/npm/v1/user',
|
|
40
|
+
}
|
|
41
|
+
|
|
42
|
+
export enum TOKEN_API_ENDPOINTS {
|
|
43
|
+
get_tokens = '/-/npm/v1/tokens',
|
|
44
|
+
delete_token = '/-/npm/v1/tokens/token/:tokenKey',
|
|
45
|
+
}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
export enum WebUrls {
|
|
2
|
+
sidebar_scopped_package = '/sidebar/:scope/:package',
|
|
3
|
+
sidebar_package = '/sidebar/:package',
|
|
4
|
+
readme_package_scoped_version = '/package/readme/:scope/:package/:version?',
|
|
5
|
+
readme_package_version = '/package/readme/:package/:version?',
|
|
6
|
+
packages_all = '/packages',
|
|
7
|
+
user_login = '/login',
|
|
8
|
+
search = '/search/:anything',
|
|
9
|
+
reset_password = '/reset_password',
|
|
10
|
+
}
|