cnpmcore
Version:
Private NPM Registry for Enterprise
85 lines • 6.65 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); }
};
import { HTTPContext, Context, HTTPController, HTTPMethod, HTTPMethodEnum, HTTPParam, HTTPQuery, Inject, Middleware, } from 'egg';
import { E451 } from 'egg/errors';
import { FULLNAME_REG_STRING } from "../../../common/PackageUtil.js";
import { AdminAccess } from "../../middleware/AdminAccess.js";
import { AbstractController } from "../AbstractController.js";
let SearchPackageController = class SearchPackageController extends AbstractController {
async search(ctx, text, from, size) {
if (!this.config.cnpmcore.enableElasticsearch) {
throw new E451('search feature not enabled in `config.cnpmcore.enableElasticsearch`');
}
const data = await this.packageSearchService.searchPackage(text, from, size);
this.setCDNHeaders(ctx);
return data;
}
async sync(fullname) {
if (!this.config.cnpmcore.enableElasticsearch) {
throw new E451('search feature not enabled in `config.cnpmcore.enableElasticsearch`');
}
const name = await this.packageSearchService.syncPackage(fullname, true);
return { package: name };
}
async delete(fullname) {
if (!this.config.cnpmcore.enableElasticsearch) {
throw new E451('search feature not enabled in `config.cnpmcore.enableElasticsearch`');
}
const name = await this.packageSearchService.removePackage(fullname);
return { package: name };
}
};
__decorate([
Inject(),
__metadata("design:type", Function)
], SearchPackageController.prototype, "packageSearchService", void 0);
__decorate([
HTTPMethod({
// GET /-/v1/search?text=react&size=20&from=0&quality=0.65&popularity=0.98&maintenance=0.5
path: '/-/v1/search',
method: HTTPMethodEnum.GET,
}),
__param(0, HTTPContext()),
__param(1, HTTPQuery()),
__param(2, HTTPQuery()),
__param(3, HTTPQuery()),
__metadata("design:type", Function),
__metadata("design:paramtypes", [Context, Object, Object, Object]),
__metadata("design:returntype", Promise)
], SearchPackageController.prototype, "search", null);
__decorate([
HTTPMethod({
path: `/-/v1/search/sync/:fullname(${FULLNAME_REG_STRING})`,
method: HTTPMethodEnum.PUT,
}),
__param(0, HTTPParam()),
__metadata("design:type", Function),
__metadata("design:paramtypes", [String]),
__metadata("design:returntype", Promise)
], SearchPackageController.prototype, "sync", null);
__decorate([
HTTPMethod({
path: `/-/v1/search/sync/:fullname(${FULLNAME_REG_STRING})`,
method: HTTPMethodEnum.DELETE,
}),
Middleware(AdminAccess),
__param(0, HTTPParam()),
__metadata("design:type", Function),
__metadata("design:paramtypes", [String]),
__metadata("design:returntype", Promise)
], SearchPackageController.prototype, "delete", null);
SearchPackageController = __decorate([
HTTPController()
], SearchPackageController);
export { SearchPackageController };
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiU2VhcmNoUGFja2FnZUNvbnRyb2xsZXIuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9hcHAvcG9ydC9jb250cm9sbGVyL3BhY2thZ2UvU2VhcmNoUGFja2FnZUNvbnRyb2xsZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7O0FBQ0EsT0FBTyxFQUNMLFdBQVcsRUFDWCxPQUFPLEVBQ1AsY0FBYyxFQUNkLFVBQVUsRUFDVixjQUFjLEVBQ2QsU0FBUyxFQUNULFNBQVMsRUFDVCxNQUFNLEVBQ04sVUFBVSxHQUNYLE1BQU0sS0FBSyxDQUFDO0FBQ2IsT0FBTyxFQUFFLElBQUksRUFBRSxNQUFNLFlBQVksQ0FBQztBQUVsQyxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSxnQ0FBZ0MsQ0FBQztBQUVyRSxPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0saUNBQWlDLENBQUM7QUFFOUQsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sMEJBQTBCLENBQUM7QUFHdkQsSUFBTSx1QkFBdUIsR0FBN0IsTUFBTSx1QkFBd0IsU0FBUSxrQkFBa0I7SUFTdkQsQUFBTixLQUFLLENBQUMsTUFBTSxDQUNLLEdBQVksRUFDZCxJQUErQyxFQUMvQyxJQUErQyxFQUMvQyxJQUErQztRQUU1RCxJQUFJLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxRQUFRLENBQUMsbUJBQW1CLEVBQUUsQ0FBQztZQUM5QyxNQUFNLElBQUksSUFBSSxDQUFDLHFFQUFxRSxDQUFDLENBQUM7UUFDeEYsQ0FBQztRQUNELE1BQU0sSUFBSSxHQUFHLE1BQU0sSUFBSSxDQUFDLG9CQUFvQixDQUFDLGFBQWEsQ0FBQyxJQUFJLEVBQUUsSUFBSSxFQUFFLElBQUksQ0FBQyxDQUFDO1FBQzdFLElBQUksQ0FBQyxhQUFhLENBQUMsR0FBRyxDQUFDLENBQUM7UUFDeEIsT0FBTyxJQUFJLENBQUM7SUFDZCxDQUFDO0lBTUssQUFBTixLQUFLLENBQUMsSUFBSSxDQUFjLFFBQWdCO1FBQ3RDLElBQUksQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLFFBQVEsQ0FBQyxtQkFBbUIsRUFBRSxDQUFDO1lBQzlDLE1BQU0sSUFBSSxJQUFJLENBQUMscUVBQXFFLENBQUMsQ0FBQztRQUN4RixDQUFDO1FBQ0QsTUFBTSxJQUFJLEdBQUcsTUFBTSxJQUFJLENBQUMsb0JBQW9CLENBQUMsV0FBVyxDQUFDLFFBQVEsRUFBRSxJQUFJLENBQUMsQ0FBQztRQUN6RSxPQUFPLEVBQUUsT0FBTyxFQUFFLElBQUksRUFBRSxDQUFDO0lBQzNCLENBQUM7SUFPSyxBQUFOLEtBQUssQ0FBQyxNQUFNLENBQWMsUUFBZ0I7UUFDeEMsSUFBSSxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsUUFBUSxDQUFDLG1CQUFtQixFQUFFLENBQUM7WUFDOUMsTUFBTSxJQUFJLElBQUksQ0FBQyxxRUFBcUUsQ0FBQyxDQUFDO1FBQ3hGLENBQUM7UUFDRCxNQUFNLElBQUksR0FBRyxNQUFNLElBQUksQ0FBQyxvQkFBb0IsQ0FBQyxhQUFhLENBQUMsUUFBUSxDQUFDLENBQUM7UUFDckUsT0FBTyxFQUFFLE9BQU8sRUFBRSxJQUFJLEVBQUUsQ0FBQztJQUMzQixDQUFDO0NBQ0YsQ0FBQTtBQTdDa0I7SUFEaEIsTUFBTSxFQUFFOztxRUFDbUQ7QUFPdEQ7SUFMTCxVQUFVLENBQUM7UUFDViwwRkFBMEY7UUFDMUYsSUFBSSxFQUFFLGNBQWM7UUFDcEIsTUFBTSxFQUFFLGNBQWMsQ0FBQyxHQUFHO0tBQzNCLENBQUM7SUFFQyxXQUFBLFdBQVcsRUFBRSxDQUFBO0lBQ2IsV0FBQSxTQUFTLEVBQUUsQ0FBQTtJQUNYLFdBQUEsU0FBUyxFQUFFLENBQUE7SUFDWCxXQUFBLFNBQVMsRUFBRSxDQUFBOztxQ0FIUSxPQUFPOztxREFXNUI7QUFNSztJQUpMLFVBQVUsQ0FBQztRQUNWLElBQUksRUFBRSwrQkFBK0IsbUJBQW1CLEdBQUc7UUFDM0QsTUFBTSxFQUFFLGNBQWMsQ0FBQyxHQUFHO0tBQzNCLENBQUM7SUFDVSxXQUFBLFNBQVMsRUFBRSxDQUFBOzs7O21EQU10QjtBQU9LO0lBTEwsVUFBVSxDQUFDO1FBQ1YsSUFBSSxFQUFFLCtCQUErQixtQkFBbUIsR0FBRztRQUMzRCxNQUFNLEVBQUUsY0FBYyxDQUFDLE1BQU07S0FDOUIsQ0FBQztJQUNELFVBQVUsQ0FBQyxXQUFXLENBQUM7SUFDVixXQUFBLFNBQVMsRUFBRSxDQUFBOzs7O3FEQU14QjtBQTlDVSx1QkFBdUI7SUFEbkMsY0FBYyxFQUFFO0dBQ0osdUJBQXVCLENBK0NuQyJ9