cnpmcore 3.12.1 → 3.13.1

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.
@@ -16,3 +16,7 @@ export declare enum PresetRegistryName {
16
16
  default = "default",
17
17
  self = "self"
18
18
  }
19
+ export declare enum PackageAccessLevel {
20
+ write = "write",
21
+ read = "read"
22
+ }
@@ -1,6 +1,6 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.PresetRegistryName = exports.SyncDeleteMode = exports.SyncMode = exports.GLOBAL_WORKER = exports.LATEST_TAG = exports.BUG_VERSIONS = void 0;
3
+ exports.PackageAccessLevel = exports.PresetRegistryName = exports.SyncDeleteMode = exports.SyncMode = exports.GLOBAL_WORKER = exports.LATEST_TAG = exports.BUG_VERSIONS = void 0;
4
4
  exports.BUG_VERSIONS = 'bug-versions';
5
5
  exports.LATEST_TAG = 'latest';
6
6
  exports.GLOBAL_WORKER = 'GLOBAL_WORKER';
@@ -22,4 +22,9 @@ var PresetRegistryName;
22
22
  PresetRegistryName["default"] = "default";
23
23
  PresetRegistryName["self"] = "self";
24
24
  })(PresetRegistryName = exports.PresetRegistryName || (exports.PresetRegistryName = {}));
25
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29uc3RhbnRzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vYXBwL2NvbW1vbi9jb25zdGFudHMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7O0FBQWEsUUFBQSxZQUFZLEdBQUcsY0FBYyxDQUFDO0FBQzlCLFFBQUEsVUFBVSxHQUFHLFFBQVEsQ0FBQztBQUN0QixRQUFBLGFBQWEsR0FBRyxlQUFlLENBQUM7QUFDN0MsSUFBWSxRQUtYO0FBTEQsV0FBWSxRQUFRO0lBQ2xCLHlCQUFhLENBQUE7SUFDYiwyQkFBZSxDQUFBO0lBQ2YsMkJBQWUsQ0FBQTtJQUNmLHVCQUFXLENBQUE7QUFDYixDQUFDLEVBTFcsUUFBUSxHQUFSLGdCQUFRLEtBQVIsZ0JBQVEsUUFLbkI7QUFDRCxJQUFZLGNBSVg7QUFKRCxXQUFZLGNBQWM7SUFDeEIsbUNBQWlCLENBQUE7SUFDakIsaUNBQWUsQ0FBQTtJQUNmLG1DQUFpQixDQUFBO0FBQ25CLENBQUMsRUFKVyxjQUFjLEdBQWQsc0JBQWMsS0FBZCxzQkFBYyxRQUl6QjtBQUVELElBQVksa0JBR1g7QUFIRCxXQUFZLGtCQUFrQjtJQUM1Qix5Q0FBbUIsQ0FBQTtJQUNuQixtQ0FBYSxDQUFBO0FBQ2YsQ0FBQyxFQUhXLGtCQUFrQixHQUFsQiwwQkFBa0IsS0FBbEIsMEJBQWtCLFFBRzdCIn0=
25
+ var PackageAccessLevel;
26
+ (function (PackageAccessLevel) {
27
+ PackageAccessLevel["write"] = "write";
28
+ PackageAccessLevel["read"] = "read";
29
+ })(PackageAccessLevel = exports.PackageAccessLevel || (exports.PackageAccessLevel = {}));
30
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29uc3RhbnRzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vYXBwL2NvbW1vbi9jb25zdGFudHMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7O0FBQWEsUUFBQSxZQUFZLEdBQUcsY0FBYyxDQUFDO0FBQzlCLFFBQUEsVUFBVSxHQUFHLFFBQVEsQ0FBQztBQUN0QixRQUFBLGFBQWEsR0FBRyxlQUFlLENBQUM7QUFDN0MsSUFBWSxRQUtYO0FBTEQsV0FBWSxRQUFRO0lBQ2xCLHlCQUFhLENBQUE7SUFDYiwyQkFBZSxDQUFBO0lBQ2YsMkJBQWUsQ0FBQTtJQUNmLHVCQUFXLENBQUE7QUFDYixDQUFDLEVBTFcsUUFBUSxHQUFSLGdCQUFRLEtBQVIsZ0JBQVEsUUFLbkI7QUFDRCxJQUFZLGNBSVg7QUFKRCxXQUFZLGNBQWM7SUFDeEIsbUNBQWlCLENBQUE7SUFDakIsaUNBQWUsQ0FBQTtJQUNmLG1DQUFpQixDQUFBO0FBQ25CLENBQUMsRUFKVyxjQUFjLEdBQWQsc0JBQWMsS0FBZCxzQkFBYyxRQUl6QjtBQUVELElBQVksa0JBR1g7QUFIRCxXQUFZLGtCQUFrQjtJQUM1Qix5Q0FBbUIsQ0FBQTtJQUNuQixtQ0FBYSxDQUFBO0FBQ2YsQ0FBQyxFQUhXLGtCQUFrQixHQUFsQiwwQkFBa0IsS0FBbEIsMEJBQWtCLFFBRzdCO0FBRUQsSUFBWSxrQkFHWDtBQUhELFdBQVksa0JBQWtCO0lBQzVCLHFDQUFlLENBQUE7SUFDZixtQ0FBYSxDQUFBO0FBQ2YsQ0FBQyxFQUhXLGtCQUFrQixHQUFsQiwwQkFBa0IsS0FBbEIsMEJBQWtCLFFBRzdCIn0=
@@ -21,9 +21,11 @@ let AuthAdapter = class AuthAdapter {
21
21
  async getAuthUrl(ctx) {
22
22
  const sessionId = (0, crypto_1.randomUUID)();
23
23
  await this.redis.setex(sessionId, ONE_DAY, '');
24
+ // INTEGRATE.md
25
+ const registry = ctx.app.config.cnpmcore.registry;
24
26
  return {
25
- loginUrl: `${ctx.href}/request/session/${sessionId}`,
26
- doneUrl: `${ctx.href}/done/session/${sessionId}`,
27
+ loginUrl: `${registry}/-/v1/login/request/session/${sessionId}`,
28
+ doneUrl: `${registry}/-/v1/login/done/session/${sessionId}`,
27
29
  };
28
30
  }
29
31
  // should implements in infra
@@ -50,4 +52,4 @@ AuthAdapter = __decorate([
50
52
  })
51
53
  ], AuthAdapter);
52
54
  exports.AuthAdapter = AuthAdapter;
53
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiQXV0aEFkYXB0ZXIuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9hcHAvaW5mcmEvQXV0aEFkYXB0ZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7O0FBQUEsc0NBS3FCO0FBQ3JCLHFDQUFnQztBQUNoQyxtQ0FBb0M7QUFHcEMsTUFBTSxPQUFPLEdBQUcsSUFBSSxHQUFHLEVBQUUsQ0FBQztBQU8xQjs7R0FFRztBQUtJLElBQU0sV0FBVyxHQUFqQixNQUFNLFdBQVc7SUFPdEIsS0FBSyxDQUFDLFVBQVUsQ0FBQyxHQUFlO1FBQzlCLE1BQU0sU0FBUyxHQUFHLElBQUEsbUJBQVUsR0FBRSxDQUFDO1FBQy9CLE1BQU0sSUFBSSxDQUFDLEtBQUssQ0FBQyxLQUFLLENBQUMsU0FBUyxFQUFFLE9BQU8sRUFBRSxFQUFFLENBQUMsQ0FBQztRQUMvQyxPQUFPO1lBQ0wsUUFBUSxFQUFFLEdBQUcsR0FBRyxDQUFDLElBQUksb0JBQW9CLFNBQVMsRUFBRTtZQUNwRCxPQUFPLEVBQUUsR0FBRyxHQUFHLENBQUMsSUFBSSxpQkFBaUIsU0FBUyxFQUFFO1NBQ2pELENBQUM7SUFDSixDQUFDO0lBRUQsNkJBQTZCO0lBQzdCLEtBQUssQ0FBQyxpQkFBaUI7UUFDckIsSUFBSSxJQUFJLENBQUMsSUFBSSxFQUFFO1lBQ2IsTUFBTSxFQUFFLElBQUksRUFBRSxLQUFLLEVBQUUsR0FBRyxJQUFJLENBQUMsSUFBSSxDQUFDO1lBQ2xDLE9BQU8sRUFBRSxJQUFJLEVBQUUsS0FBSyxFQUFnQixDQUFDO1NBQ3RDO1FBQ0QsT0FBTyxJQUFJLENBQUM7SUFDZCxDQUFDO0NBRUYsQ0FBQTtBQXhCQztJQUFDLElBQUEsYUFBTSxHQUFFOzhCQUNPLGVBQUs7MENBQUM7QUFFdEI7SUFBQyxJQUFBLGFBQU0sR0FBRTs7eUNBQ2U7QUFMYixXQUFXO0lBSnZCLElBQUEscUJBQWMsRUFBQztRQUNkLFdBQVcsRUFBRSxrQkFBVyxDQUFDLE1BQU07UUFDL0IsSUFBSSxFQUFFLGFBQWE7S0FDcEIsQ0FBQztHQUNXLFdBQVcsQ0F5QnZCO0FBekJZLGtDQUFXIn0=
55
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiQXV0aEFkYXB0ZXIuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9hcHAvaW5mcmEvQXV0aEFkYXB0ZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7O0FBQUEsc0NBS3FCO0FBQ3JCLHFDQUFnQztBQUNoQyxtQ0FBb0M7QUFHcEMsTUFBTSxPQUFPLEdBQUcsSUFBSSxHQUFHLEVBQUUsQ0FBQztBQU8xQjs7R0FFRztBQUtJLElBQU0sV0FBVyxHQUFqQixNQUFNLFdBQVc7SUFPdEIsS0FBSyxDQUFDLFVBQVUsQ0FBQyxHQUFlO1FBQzlCLE1BQU0sU0FBUyxHQUFHLElBQUEsbUJBQVUsR0FBRSxDQUFDO1FBQy9CLE1BQU0sSUFBSSxDQUFDLEtBQUssQ0FBQyxLQUFLLENBQUMsU0FBUyxFQUFFLE9BQU8sRUFBRSxFQUFFLENBQUMsQ0FBQztRQUUvQyxlQUFlO1FBQ2YsTUFBTSxRQUFRLEdBQUcsR0FBRyxDQUFDLEdBQUcsQ0FBQyxNQUFNLENBQUMsUUFBUSxDQUFDLFFBQVEsQ0FBQztRQUNsRCxPQUFPO1lBQ0wsUUFBUSxFQUFFLEdBQUcsUUFBUSwrQkFBK0IsU0FBUyxFQUFFO1lBQy9ELE9BQU8sRUFBRSxHQUFHLFFBQVEsNEJBQTRCLFNBQVMsRUFBRTtTQUM1RCxDQUFDO0lBQ0osQ0FBQztJQUVELDZCQUE2QjtJQUM3QixLQUFLLENBQUMsaUJBQWlCO1FBQ3JCLElBQUksSUFBSSxDQUFDLElBQUksRUFBRTtZQUNiLE1BQU0sRUFBRSxJQUFJLEVBQUUsS0FBSyxFQUFFLEdBQUcsSUFBSSxDQUFDLElBQUksQ0FBQztZQUNsQyxPQUFPLEVBQUUsSUFBSSxFQUFFLEtBQUssRUFBZ0IsQ0FBQztTQUN0QztRQUNELE9BQU8sSUFBSSxDQUFDO0lBQ2QsQ0FBQztDQUVGLENBQUE7QUEzQkM7SUFBQyxJQUFBLGFBQU0sR0FBRTs4QkFDTyxlQUFLOzBDQUFDO0FBRXRCO0lBQUMsSUFBQSxhQUFNLEdBQUU7O3lDQUNlO0FBTGIsV0FBVztJQUp2QixJQUFBLHFCQUFjLEVBQUM7UUFDZCxXQUFXLEVBQUUsa0JBQVcsQ0FBQyxNQUFNO1FBQy9CLElBQUksRUFBRSxhQUFhO0tBQ3BCLENBQUM7R0FDVyxXQUFXLENBNEJ2QjtBQTVCWSxrQ0FBVyJ9
@@ -0,0 +1,5 @@
1
+ import { AbstractController } from './AbstractController';
2
+ export declare class AccessController extends AbstractController {
3
+ listCollaborators(fullname: string): Promise<Record<string, string>>;
4
+ listPackagesByUser(username: string): Promise<Record<string, string>>;
5
+ }
@@ -0,0 +1,73 @@
1
+ "use strict";
2
+ var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
3
+ var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
4
+ if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
5
+ else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
6
+ return c > 3 && r && Object.defineProperty(target, key, r), r;
7
+ };
8
+ var __metadata = (this && this.__metadata) || function (k, v) {
9
+ if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
10
+ };
11
+ var __param = (this && this.__param) || function (paramIndex, decorator) {
12
+ return function (target, key) { decorator(target, key, paramIndex); }
13
+ };
14
+ Object.defineProperty(exports, "__esModule", { value: true });
15
+ exports.AccessController = void 0;
16
+ const tegg_1 = require("@eggjs/tegg");
17
+ const AbstractController_1 = require("./AbstractController");
18
+ const PackageUtil_1 = require("../../common/PackageUtil");
19
+ const constants_1 = require("../../common/constants");
20
+ const egg_errors_1 = require("egg-errors");
21
+ let AccessController = class AccessController extends AbstractController_1.AbstractController {
22
+ async listCollaborators(fullname) {
23
+ const [scope, name] = (0, PackageUtil_1.getScopeAndName)(fullname);
24
+ const pkg = await this.packageRepository.findPackage(scope, name);
25
+ // return 403 if pkg not exists
26
+ if (!pkg) {
27
+ throw new egg_errors_1.ForbiddenError('Forbidden');
28
+ }
29
+ const maintainers = await this.packageRepository.listPackageMaintainers(pkg.packageId);
30
+ const res = {};
31
+ maintainers.forEach(maintainer => {
32
+ res[maintainer.displayName] = constants_1.PackageAccessLevel.write;
33
+ });
34
+ return res;
35
+ }
36
+ async listPackagesByUser(username) {
37
+ const user = await this.userRepository.findUserByName(username);
38
+ if (!user) {
39
+ throw new egg_errors_1.NotFoundError(`User "${username}" not found`);
40
+ }
41
+ const pkgs = await this.packageRepository.listPackagesByUserId(user.userId);
42
+ const res = {};
43
+ pkgs.forEach(pkg => {
44
+ res[(0, PackageUtil_1.getFullname)(pkg.scope, pkg.name)] = constants_1.PackageAccessLevel.write;
45
+ });
46
+ return res;
47
+ }
48
+ };
49
+ __decorate([
50
+ (0, tegg_1.HTTPMethod)({
51
+ path: `/-/package/:fullname(${PackageUtil_1.FULLNAME_REG_STRING})/collaborators`,
52
+ method: tegg_1.HTTPMethodEnum.GET,
53
+ }),
54
+ __param(0, (0, tegg_1.HTTPParam)()),
55
+ __metadata("design:type", Function),
56
+ __metadata("design:paramtypes", [String]),
57
+ __metadata("design:returntype", Promise)
58
+ ], AccessController.prototype, "listCollaborators", null);
59
+ __decorate([
60
+ (0, tegg_1.HTTPMethod)({
61
+ path: '/-/org/:username/package',
62
+ method: tegg_1.HTTPMethodEnum.GET,
63
+ }),
64
+ __param(0, (0, tegg_1.HTTPParam)()),
65
+ __metadata("design:type", Function),
66
+ __metadata("design:paramtypes", [String]),
67
+ __metadata("design:returntype", Promise)
68
+ ], AccessController.prototype, "listPackagesByUser", null);
69
+ AccessController = __decorate([
70
+ (0, tegg_1.HTTPController)()
71
+ ], AccessController);
72
+ exports.AccessController = AccessController;
73
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiQWNjZXNzQ29udHJvbGxlci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL2FwcC9wb3J0L2NvbnRyb2xsZXIvQWNjZXNzQ29udHJvbGxlci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7QUFBQSxzQ0FLcUI7QUFDckIsNkRBQTBEO0FBQzFELDBEQUE2RjtBQUM3RixzREFBNEQ7QUFDNUQsMkNBQTJEO0FBR3BELElBQU0sZ0JBQWdCLEdBQXRCLE1BQU0sZ0JBQWlCLFNBQVEsdUNBQWtCO0lBS2hELEFBQU4sS0FBSyxDQUFDLGlCQUFpQixDQUFjLFFBQWdCO1FBQ25ELE1BQU0sQ0FBRSxLQUFLLEVBQUUsSUFBSSxDQUFFLEdBQUcsSUFBQSw2QkFBZSxFQUFDLFFBQVEsQ0FBQyxDQUFDO1FBQ2xELE1BQU0sR0FBRyxHQUFHLE1BQU0sSUFBSSxDQUFDLGlCQUFpQixDQUFDLFdBQVcsQ0FBQyxLQUFLLEVBQUUsSUFBSSxDQUFDLENBQUM7UUFDbEUsK0JBQStCO1FBQy9CLElBQUksQ0FBQyxHQUFHLEVBQUU7WUFDUixNQUFNLElBQUksMkJBQWMsQ0FBQyxXQUFXLENBQUMsQ0FBQztTQUN2QztRQUVELE1BQU0sV0FBVyxHQUFHLE1BQU0sSUFBSSxDQUFDLGlCQUFpQixDQUFDLHNCQUFzQixDQUFDLEdBQUksQ0FBQyxTQUFTLENBQUMsQ0FBQztRQUN4RixNQUFNLEdBQUcsR0FBMkIsRUFBRSxDQUFDO1FBQ3ZDLFdBQVcsQ0FBQyxPQUFPLENBQUMsVUFBVSxDQUFDLEVBQUU7WUFDL0IsR0FBRyxDQUFDLFVBQVUsQ0FBQyxXQUFXLENBQUMsR0FBRyw4QkFBa0IsQ0FBQyxLQUFLLENBQUM7UUFDekQsQ0FBQyxDQUFDLENBQUM7UUFFSCxPQUFPLEdBQUcsQ0FBQztJQUNiLENBQUM7SUFNSyxBQUFOLEtBQUssQ0FBQyxrQkFBa0IsQ0FBYyxRQUFnQjtRQUNwRCxNQUFNLElBQUksR0FBRyxNQUFNLElBQUksQ0FBQyxjQUFjLENBQUMsY0FBYyxDQUFDLFFBQVEsQ0FBQyxDQUFDO1FBQ2hFLElBQUksQ0FBQyxJQUFJLEVBQUU7WUFDVCxNQUFNLElBQUksMEJBQWEsQ0FBQyxTQUFTLFFBQVEsYUFBYSxDQUFDLENBQUM7U0FDekQ7UUFFRCxNQUFNLElBQUksR0FBRyxNQUFNLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxvQkFBb0IsQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLENBQUM7UUFDNUUsTUFBTSxHQUFHLEdBQTJCLEVBQUUsQ0FBQztRQUN2QyxJQUFJLENBQUMsT0FBTyxDQUFDLEdBQUcsQ0FBQyxFQUFFO1lBQ2pCLEdBQUcsQ0FBQyxJQUFBLHlCQUFXLEVBQUMsR0FBRyxDQUFDLEtBQUssRUFBRSxHQUFHLENBQUMsSUFBSSxDQUFDLENBQUMsR0FBRyw4QkFBa0IsQ0FBQyxLQUFLLENBQUM7UUFDbkUsQ0FBQyxDQUFDLENBQUM7UUFFSCxPQUFPLEdBQUcsQ0FBQztJQUNiLENBQUM7Q0FHRixDQUFBO0FBckNPO0lBSkwsSUFBQSxpQkFBVSxFQUFDO1FBQ1YsSUFBSSxFQUFFLHdCQUF3QixpQ0FBbUIsaUJBQWlCO1FBQ2xFLE1BQU0sRUFBRSxxQkFBYyxDQUFDLEdBQUc7S0FDM0IsQ0FBQztJQUN1QixXQUFBLElBQUEsZ0JBQVMsR0FBRSxDQUFBOzs7O3lEQWVuQztBQU1LO0lBSkwsSUFBQSxpQkFBVSxFQUFDO1FBQ1YsSUFBSSxFQUFFLDBCQUEwQjtRQUNoQyxNQUFNLEVBQUUscUJBQWMsQ0FBQyxHQUFHO0tBQzNCLENBQUM7SUFDd0IsV0FBQSxJQUFBLGdCQUFTLEdBQUUsQ0FBQTs7OzswREFhcEM7QUF2Q1UsZ0JBQWdCO0lBRDVCLElBQUEscUJBQWMsR0FBRTtHQUNKLGdCQUFnQixDQTBDNUI7QUExQ1ksNENBQWdCIn0=
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "cnpmcore",
3
- "version": "3.12.1",
3
+ "version": "3.13.1",
4
4
  "description": "npm core",
5
5
  "files": [
6
6
  "dist/**/*"