cnpmcore
Version:
190 lines • 14.4 kB
JavaScript
;
var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
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;
return c > 3 && r && Object.defineProperty(target, key, r), r;
};
var __metadata = (this && this.__metadata) || function (k, v) {
if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
};
var __param = (this && this.__param) || function (paramIndex, decorator) {
return function (target, key) { decorator(target, key, paramIndex); }
};
Object.defineProperty(exports, "__esModule", { value: true });
exports.RegistryController = void 0;
const tegg_1 = require("@eggjs/tegg");
const egg_errors_1 = require("egg-errors");
const AbstractController_1 = require("./AbstractController");
const RegistryManagerService_1 = require("../../core/service/RegistryManagerService");
const AdminAccess_1 = require("../middleware/AdminAccess");
const ScopeManagerService_1 = require("../../core/service/ScopeManagerService");
const typebox_1 = require("../typebox");
let RegistryController = class RegistryController extends AbstractController_1.AbstractController {
async listRegistries(pageSize, pageIndex) {
const registries = await this.registryManagerService.listRegistries({ pageSize, pageIndex });
return registries;
}
async showRegistry(id) {
const registry = await this.registryManagerService.findByRegistryId(id);
if (!registry) {
throw new egg_errors_1.NotFoundError('registry not found');
}
return registry;
}
async showRegistryScopes(id, pageSize, pageIndex) {
const registry = await this.registryManagerService.findByRegistryId(id);
if (!registry) {
throw new egg_errors_1.NotFoundError('registry not found');
}
const scopes = await this.scopeManagerService.listScopesByRegistryId(id, { pageIndex, pageSize });
return scopes;
}
async createRegistry(ctx, registryOptions) {
ctx.tValidate(typebox_1.RegistryCreateOptions, registryOptions);
const authorizedUser = await this.userRoleManager.requiredAuthorizedUser(ctx, 'setting');
const { name, changeStream, host, userPrefix = '', type, authToken } = registryOptions;
await this.registryManagerService.createRegistry({
name,
changeStream,
host,
userPrefix,
operatorId: authorizedUser.userId,
type,
authToken,
});
return { ok: true };
}
async createRegistrySyncTask(ctx, id, registryOptions) {
ctx.tValidate(typebox_1.RegistryCreateSyncOptions, registryOptions);
const { since } = registryOptions;
const registry = await this.registryManagerService.findByRegistryId(id);
if (!registry) {
throw new egg_errors_1.NotFoundError('registry not found');
}
const authorizedUser = await this.userRoleManager.requiredAuthorizedUser(ctx, 'setting');
await this.registryManagerService.createSyncChangesStream({ registryId: registry.registryId, since, operatorId: authorizedUser.userId });
return { ok: true };
}
async removeRegistry(ctx, id) {
const authorizedUser = await this.userRoleManager.requiredAuthorizedUser(ctx, 'setting');
await this.registryManagerService.remove({ registryId: id, operatorId: authorizedUser.userId });
return { ok: true };
}
async updateRegistry(ctx, id, updateRegistryOptions) {
ctx.tValidate(typebox_1.RegistryUpdateOptions, updateRegistryOptions);
const registry = await this.registryManagerService.findByRegistryId(id);
if (!registry) {
throw new egg_errors_1.NotFoundError('registry not found');
}
else {
const { name, changeStream, host, type, authToken } = registry;
const _updateRegistryOptions = {
name,
changeStream,
host,
type,
authToken,
...updateRegistryOptions,
};
await this.registryManagerService.updateRegistry(registry.registryId, _updateRegistryOptions);
}
return { ok: true };
}
};
exports.RegistryController = RegistryController;
__decorate([
(0, tegg_1.Inject)(),
__metadata("design:type", RegistryManagerService_1.RegistryManagerService)
], RegistryController.prototype, "registryManagerService", void 0);
__decorate([
(0, tegg_1.Inject)(),
__metadata("design:type", ScopeManagerService_1.ScopeManagerService)
], RegistryController.prototype, "scopeManagerService", void 0);
__decorate([
(0, tegg_1.HTTPMethod)({
path: '/-/registry',
method: tegg_1.HTTPMethodEnum.GET,
}),
__param(0, (0, tegg_1.HTTPQuery)()),
__param(1, (0, tegg_1.HTTPQuery)()),
__metadata("design:type", Function),
__metadata("design:paramtypes", [Object, Object]),
__metadata("design:returntype", Promise)
], RegistryController.prototype, "listRegistries", null);
__decorate([
(0, tegg_1.HTTPMethod)({
path: '/-/registry/:id',
method: tegg_1.HTTPMethodEnum.GET,
}),
__param(0, (0, tegg_1.HTTPParam)()),
__metadata("design:type", Function),
__metadata("design:paramtypes", [String]),
__metadata("design:returntype", Promise)
], RegistryController.prototype, "showRegistry", null);
__decorate([
(0, tegg_1.HTTPMethod)({
path: '/-/registry/:id/scopes',
method: tegg_1.HTTPMethodEnum.GET,
}),
__param(0, (0, tegg_1.HTTPParam)()),
__param(1, (0, tegg_1.HTTPQuery)()),
__param(2, (0, tegg_1.HTTPQuery)()),
__metadata("design:type", Function),
__metadata("design:paramtypes", [String, Object, Object]),
__metadata("design:returntype", Promise)
], RegistryController.prototype, "showRegistryScopes", null);
__decorate([
(0, tegg_1.HTTPMethod)({
path: '/-/registry',
method: tegg_1.HTTPMethodEnum.POST,
}),
(0, tegg_1.Middleware)(AdminAccess_1.AdminAccess),
__param(0, (0, tegg_1.Context)()),
__param(1, (0, tegg_1.HTTPBody)()),
__metadata("design:type", Function),
__metadata("design:paramtypes", [Object, Object]),
__metadata("design:returntype", Promise)
], RegistryController.prototype, "createRegistry", null);
__decorate([
(0, tegg_1.HTTPMethod)({
path: '/-/registry/:id/sync',
method: tegg_1.HTTPMethodEnum.POST,
}),
(0, tegg_1.Middleware)(AdminAccess_1.AdminAccess),
__param(0, (0, tegg_1.Context)()),
__param(1, (0, tegg_1.HTTPParam)()),
__param(2, (0, tegg_1.HTTPBody)()),
__metadata("design:type", Function),
__metadata("design:paramtypes", [Object, String, Object]),
__metadata("design:returntype", Promise)
], RegistryController.prototype, "createRegistrySyncTask", null);
__decorate([
(0, tegg_1.HTTPMethod)({
path: '/-/registry/:id',
method: tegg_1.HTTPMethodEnum.DELETE,
}),
(0, tegg_1.Middleware)(AdminAccess_1.AdminAccess),
__param(0, (0, tegg_1.Context)()),
__param(1, (0, tegg_1.HTTPParam)()),
__metadata("design:type", Function),
__metadata("design:paramtypes", [Object, String]),
__metadata("design:returntype", Promise)
], RegistryController.prototype, "removeRegistry", null);
__decorate([
(0, tegg_1.HTTPMethod)({
path: '/-/registry/:id',
method: tegg_1.HTTPMethodEnum.PATCH,
}),
(0, tegg_1.Middleware)(AdminAccess_1.AdminAccess),
__param(0, (0, tegg_1.Context)()),
__param(1, (0, tegg_1.HTTPParam)()),
__param(2, (0, tegg_1.HTTPBody)()),
__metadata("design:type", Function),
__metadata("design:paramtypes", [Object, String, Object]),
__metadata("design:returntype", Promise)
], RegistryController.prototype, "updateRegistry", null);
exports.RegistryController = RegistryController = __decorate([
(0, tegg_1.HTTPController)()
], RegistryController);
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiUmVnaXN0cnlDb250cm9sbGVyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vYXBwL3BvcnQvY29udHJvbGxlci9SZWdpc3RyeUNvbnRyb2xsZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7O0FBQUEsc0NBV3FCO0FBQ3JCLDJDQUEyQztBQUMzQyw2REFBMEQ7QUFFMUQsc0ZBQXNHO0FBQ3RHLDJEQUF3RDtBQUN4RCxnRkFBNkU7QUFDN0Usd0NBQXVIO0FBR2hILElBQU0sa0JBQWtCLEdBQXhCLE1BQU0sa0JBQW1CLFNBQVEsdUNBQWtCO0lBVWxELEFBQU4sS0FBSyxDQUFDLGNBQWMsQ0FBYyxRQUFxRCxFQUFlLFNBQXVEO1FBQzNKLE1BQU0sVUFBVSxHQUFHLE1BQU0sSUFBSSxDQUFDLHNCQUFzQixDQUFDLGNBQWMsQ0FBQyxFQUFFLFFBQVEsRUFBRSxTQUFTLEVBQUUsQ0FBQyxDQUFDO1FBQzdGLE9BQU8sVUFBVSxDQUFDO0lBQ3BCLENBQUM7SUFNSyxBQUFOLEtBQUssQ0FBQyxZQUFZLENBQWMsRUFBVTtRQUN4QyxNQUFNLFFBQVEsR0FBRyxNQUFNLElBQUksQ0FBQyxzQkFBc0IsQ0FBQyxnQkFBZ0IsQ0FBQyxFQUFFLENBQUMsQ0FBQztRQUN4RSxJQUFJLENBQUMsUUFBUSxFQUFFO1lBQ2IsTUFBTSxJQUFJLDBCQUFhLENBQUMsb0JBQW9CLENBQUMsQ0FBQztTQUMvQztRQUNELE9BQU8sUUFBUSxDQUFDO0lBQ2xCLENBQUM7SUFNSyxBQUFOLEtBQUssQ0FBQyxrQkFBa0IsQ0FBYyxFQUFVLEVBQWUsUUFBcUQsRUFBZSxTQUF1RDtRQUN4TCxNQUFNLFFBQVEsR0FBRyxNQUFNLElBQUksQ0FBQyxzQkFBc0IsQ0FBQyxnQkFBZ0IsQ0FBQyxFQUFFLENBQUMsQ0FBQztRQUN4RSxJQUFJLENBQUMsUUFBUSxFQUFFO1lBQ2IsTUFBTSxJQUFJLDBCQUFhLENBQUMsb0JBQW9CLENBQUMsQ0FBQztTQUMv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