UNPKG

cnpmcore

Version:
85 lines 6.78 kB
"use strict"; 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); }; Object.defineProperty(exports, "__esModule", { value: true }); exports.DistRepository = void 0; const tegg_1 = require("@eggjs/tegg"); const NFSAdapter_1 = require("../common/adapter/NFSAdapter"); const PackageRepository_1 = require("./PackageRepository"); let DistRepository = class DistRepository { async findPackageVersionManifest(packageId, version) { const packageVersion = await this.packageRepository.findPackageVersion(packageId, version); if (packageVersion) { const [packageVersionJson, readme] = await Promise.all([ this.readDistBytesToJSON(packageVersion.manifestDist), this.readDistBytesToString(packageVersion.readmeDist), ]); if (packageVersionJson) { packageVersionJson.readme = readme; } return packageVersionJson; } } async findPackageAbbreviatedManifest(packageId, version) { const packageVersion = await this.packageRepository.findPackageVersion(packageId, version); if (packageVersion) { return await this.readDistBytesToJSON(packageVersion.abbreviatedDist); } } async readDistBytesToJSON(dist) { const str = await this.readDistBytesToString(dist); if (str) { return JSON.parse(str); } } async readDistBytesToString(dist) { const bytes = await this.readDistBytes(dist); if (!bytes) return ''; return Buffer.from(bytes).toString('utf8'); } async readDistBytes(dist) { return await this.nfsAdapter.getBytes(dist.path); } async getDistStream(dist) { return await this.nfsAdapter.getStream(dist.path); } async saveDist(dist, buf) { if (typeof buf === 'string') { return await this.nfsAdapter.uploadFile(dist.path, buf); } return await this.nfsAdapter.uploadBytes(dist.path, buf); } async destroyDist(dist) { return await this.nfsAdapter.remove(dist.path); } async downloadDist(dist) { return await this.nfsAdapter.getDownloadUrlOrStream(dist.path); } async downloadDistToFile(dist, file) { // max up to 5mins return await this.nfsAdapter.downloadFile(dist.path, file, 60000 * 5); } }; exports.DistRepository = DistRepository; __decorate([ (0, tegg_1.Inject)(), __metadata("design:type", PackageRepository_1.PackageRepository) ], DistRepository.prototype, "packageRepository", void 0); __decorate([ (0, tegg_1.Inject)(), __metadata("design:type", NFSAdapter_1.NFSAdapter) ], DistRepository.prototype, "nfsAdapter", void 0); exports.DistRepository = DistRepository = __decorate([ (0, tegg_1.SingletonProto)({ accessLevel: tegg_1.AccessLevel.PUBLIC, }) ], DistRepository); //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiRGlzdFJlcG9zaXRvcnkuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9hcHAvcmVwb3NpdG9yeS9EaXN0UmVwb3NpdG9yeS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7QUFBQSxzQ0FBa0U7QUFDbEUsNkRBQTBEO0FBQzFELDJEQUF5RTtBQU1sRSxJQUFNLGNBQWMsR0FBcEIsTUFBTSxjQUFjO0lBT3pCLEtBQUssQ0FBQywwQkFBMEIsQ0FBQyxTQUFpQixFQUFFLE9BQWU7UUFDakUsTUFBTSxjQUFjLEdBQUcsTUFBTSxJQUFJLENBQUMsaUJBQWlCLENBQUMsa0JBQWtCLENBQUMsU0FBUyxFQUFFLE9BQU8sQ0FBQyxDQUFDO1FBQzNGLElBQUksY0FBYyxFQUFFO1lBQ2xCLE1BQU0sQ0FBRSxrQkFBa0IsRUFBRSxNQUFNLENBQUUsR0FBRyxNQUFNLE9BQU8sQ0FBQyxHQUFHLENBQUM7Z0JBQ3ZELElBQUksQ0FBQyxtQkFBbUIsQ0FBa0IsY0FBYyxDQUFDLFlBQVksQ0FBQztnQkFDdEUsSUFBSSxDQUFDLHFCQUFxQixDQUFDLGNBQWMsQ0FBQyxVQUFVLENBQUM7YUFDdEQsQ0FBQyxDQUFDO1lBQ0gsSUFBSSxrQkFBa0IsRUFBRTtnQkFDdEIsa0JBQWtCLENBQUMsTUFBTSxHQUFHLE1BQU0sQ0FBQzthQUNwQztZQUNELE9BQU8sa0JBQWtCLENBQUM7U0FDM0I7SUFDSCxDQUFDO0lBRUQsS0FBSyxDQUFDLDhCQUE4QixDQUFDLFNBQWlCLEVBQUUsT0FBZTtRQUNyRSxNQUFNLGNBQWMsR0FBRyxNQUFNLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxrQkFBa0IsQ0FBQyxTQUFTLEVBQUUsT0FBTyxDQUFDLENBQUM7UUFDM0YsSUFBSSxjQUFjLEVBQUU7WUFDbEIsT0FBTyxNQUFNLElBQUksQ0FBQyxtQkFBbUIsQ0FBQyxjQUFjLENBQUMsZUFBZSxDQUFDLENBQUM7U0FDdkU7SUFDSCxDQUFDO0lBRUQsS0FBSyxDQUFDLG1CQUFtQixDQUFJLElBQVU7UUFDckMsTUFBTSxHQUFHLEdBQUcsTUFBTSxJQUFJLENBQUMscUJBQXFCLENBQUMsSUFBSSxDQUFDLENBQUM7UUFDbkQsSUFBSSxHQUFHLEVBQUU7WUFDUCxPQUFPLElBQUksQ0FBQyxLQUFLLENBQUMsR0FBRyxDQUFNLENBQUM7U0FDN0I7SUFDSCxDQUFDO0lBRUQsS0FBSyxDQUFDLHFCQUFxQixDQUFDLElBQVU7UUFDcEMsTUFBTSxLQUFLLEdBQUcsTUFBTSxJQUFJLENBQUMsYUFBYSxDQUFDLElBQUksQ0FBQyxDQUFDO1FBQzdDLElBQUksQ0FBQyxLQUFLO1lBQUUsT0FBTyxFQUFFLENBQUM7UUFDdEIsT0FBTyxNQUFNLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDLFFBQVEsQ0FBQyxNQUFNLENBQUMsQ0FBQztJQUM3QyxDQUFDO0lBRUQsS0FBSyxDQUFDLGFBQWEsQ0FBQyxJQUFVO1FBQzVCLE9BQU8sTUFBTSxJQUFJLENBQUMsVUFBVSxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUM7SUFDbkQsQ0FBQztJQUVELEtBQUssQ0FBQyxhQUFhLENBQUMsSUFBVTtRQUM1QixPQUFPLE1BQU0sSUFBSSxDQUFDLFVBQVUsQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDO0lBQ3BELENBQUM7SUFFRCxLQUFLLENBQUMsUUFBUSxDQUFDLElBQVUsRUFBRSxHQUF3QjtRQUNqRCxJQUFJLE9BQU8sR0FBRyxLQUFLLFFBQVEsRUFBRTtZQUMzQixPQUFPLE1BQU0sSUFBSSxDQUFDLFVBQVUsQ0FBQyxVQUFVLENBQUMsSUFBSSxDQUFDLElBQUksRUFBRSxHQUFHLENBQUMsQ0FBQztTQUN6RDtRQUNELE9BQU8sTUFBTSxJQUFJLENBQUMsVUFBVSxDQUFDLFdBQVcsQ0FBQyxJQUFJLENBQUMsSUFBSSxFQUFFLEdBQUcsQ0FBQyxDQUFDO0lBQzNELENBQUM7SUFFRCxLQUFLLENBQUMsV0FBVyxDQUFDLElBQVU7UUFDMUIsT0FBTyxNQUFNLElBQUksQ0FBQyxVQUFVLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQztJQUNqRCxDQUFDO0lBRUQsS0FBSyxDQUFDLFlBQVksQ0FBQyxJQUFVO1FBQzNCLE9BQU8sTUFBTSxJQUFJLENBQUMsVUFBVSxDQUFDLHNCQUFzQixDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQztJQUNqRSxDQUFDO0lBRUQsS0FBSyxDQUFDLGtCQUFrQixDQUFDLElBQVUsRUFBRSxJQUFZO1FBQy9DLGtCQUFrQjtRQUNsQixPQUFPLE1BQU0sSUFBSSxDQUFDLFVBQVUsQ0FBQyxZQUFZLENBQUMsSUFBSSxDQUFDLElBQUksRUFBRSxJQUFJLEVBQUUsS0FBSyxHQUFHLENBQUMsQ0FBQyxDQUFDO0lBQ3hFLENBQUM7Q0FDRixDQUFBO0FBcEVZLHdDQUFjO0FBRVI7SUFEaEIsSUFBQSxhQUFNLEdBQUU7OEJBQzJCLHFDQUFpQjt5REFBQztBQUdyQztJQURoQixJQUFBLGFBQU0sR0FBRTs4QkFDb0IsdUJBQVU7a0RBQUM7eUJBTDdCLGNBQWM7SUFIMUIsSUFBQSxxQkFBYyxFQUFDO1FBQ2QsV0FBVyxFQUFFLGtCQUFXLENBQUMsTUFBTTtLQUNoQyxDQUFDO0dBQ1csY0FBYyxDQW9FMUIifQ==