cnpmcore 3.62.2 → 3.63.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.
Files changed (32) hide show
  1. package/dist/app/common/adapter/NPMRegistry.d.ts +1 -1
  2. package/dist/app/common/adapter/NPMRegistry.js +1 -1
  3. package/dist/app/common/constants.d.ts +3 -0
  4. package/dist/app/common/constants.js +5 -2
  5. package/dist/app/common/enum/Task.d.ts +1 -0
  6. package/dist/app/common/enum/Task.js +2 -1
  7. package/dist/app/core/entity/ProxyCache.d.ts +19 -0
  8. package/dist/app/core/entity/ProxyCache.js +30 -0
  9. package/dist/app/core/entity/Task.d.ts +14 -0
  10. package/dist/app/core/entity/Task.js +27 -1
  11. package/dist/app/core/service/ProxyCacheService.d.ts +33 -0
  12. package/dist/app/core/service/ProxyCacheService.js +264 -0
  13. package/dist/app/port/controller/ProxyCacheController.d.ts +22 -0
  14. package/dist/app/port/controller/ProxyCacheController.js +180 -0
  15. package/dist/app/port/controller/package/DownloadPackageVersionTar.d.ts +5 -0
  16. package/dist/app/port/controller/package/DownloadPackageVersionTar.js +52 -4
  17. package/dist/app/port/controller/package/ShowPackageController.d.ts +1 -0
  18. package/dist/app/port/controller/package/ShowPackageController.js +24 -6
  19. package/dist/app/port/controller/package/ShowPackageVersionController.d.ts +2 -1
  20. package/dist/app/port/controller/package/ShowPackageVersionController.js +24 -10
  21. package/dist/app/port/schedule/CheckProxyCacheUpdateWorker.d.ts +7 -0
  22. package/dist/app/port/schedule/CheckProxyCacheUpdateWorker.js +70 -0
  23. package/dist/app/port/schedule/CheckRecentlyUpdatedPackages.js +2 -2
  24. package/dist/app/port/schedule/SyncProxyCacheWorker.d.ts +6 -0
  25. package/dist/app/port/schedule/SyncProxyCacheWorker.js +70 -0
  26. package/dist/app/repository/ProxyCacheRepository.d.ts +14 -0
  27. package/dist/app/repository/ProxyCacheRepository.js +75 -0
  28. package/dist/app/repository/model/ProxyCache.d.ts +11 -0
  29. package/dist/app/repository/model/ProxyCache.js +55 -0
  30. package/dist/config/binaries.d.ts +2 -5
  31. package/dist/config/binaries.js +3 -6
  32. package/package.json +2 -1
@@ -0,0 +1,70 @@
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
+ Object.defineProperty(exports, "__esModule", { value: true });
12
+ exports.SyncProxyCacheWorker = void 0;
13
+ const schedule_1 = require("@eggjs/tegg/schedule");
14
+ const tegg_1 = require("@eggjs/tegg");
15
+ const ProxyCacheService_1 = require("../../core/service/ProxyCacheService");
16
+ const constants_1 = require("../../common/constants");
17
+ let executingCount = 0;
18
+ let SyncProxyCacheWorker = class SyncProxyCacheWorker {
19
+ async subscribe() {
20
+ if (this.config.cnpmcore.syncMode !== constants_1.SyncMode.proxy)
21
+ return;
22
+ if (executingCount >= this.config.cnpmcore.syncPackageWorkerMaxConcurrentTasks)
23
+ return;
24
+ executingCount++;
25
+ try {
26
+ let task = await this.proxyCacheService.findExecuteTask();
27
+ while (task) {
28
+ const startTime = Date.now();
29
+ this.logger.info('[SyncProxyCacheWorker:subscribe:executeTask:start][%s] taskId: %s, targetName: %s, attempts: %s, params: %j, updatedAt: %s, delay %sms', executingCount, task.taskId, task.targetName, task.attempts, task.data, task.updatedAt, startTime - task.updatedAt.getTime());
30
+ await this.proxyCacheService.executeTask(task);
31
+ const use = Date.now() - startTime;
32
+ this.logger.info('[SyncProxyCacheWorker:subscribe:executeTask:success][%s] taskId: %s, targetName: %s, use %sms', executingCount, task.taskId, task.targetName, use);
33
+ if (executingCount >= this.config.cnpmcore.syncPackageWorkerMaxConcurrentTasks) {
34
+ this.logger.info('[SyncProxyCacheWorker:subscribe:executeTask] current sync task count %s, exceed max concurrent tasks %s', executingCount, this.config.cnpmcore.syncPackageWorkerMaxConcurrentTasks);
35
+ break;
36
+ }
37
+ // try next task
38
+ task = await this.proxyCacheService.findExecuteTask();
39
+ }
40
+ }
41
+ catch (err) {
42
+ this.logger.error('[SyncProxyCacheWorker:subscribe:executeTask:error][%s] %s', executingCount, err);
43
+ }
44
+ finally {
45
+ executingCount--;
46
+ }
47
+ }
48
+ };
49
+ exports.SyncProxyCacheWorker = SyncProxyCacheWorker;
50
+ __decorate([
51
+ (0, tegg_1.Inject)(),
52
+ __metadata("design:type", ProxyCacheService_1.ProxyCacheService)
53
+ ], SyncProxyCacheWorker.prototype, "proxyCacheService", void 0);
54
+ __decorate([
55
+ (0, tegg_1.Inject)(),
56
+ __metadata("design:type", Object)
57
+ ], SyncProxyCacheWorker.prototype, "config", void 0);
58
+ __decorate([
59
+ (0, tegg_1.Inject)(),
60
+ __metadata("design:type", Object)
61
+ ], SyncProxyCacheWorker.prototype, "logger", void 0);
62
+ exports.SyncProxyCacheWorker = SyncProxyCacheWorker = __decorate([
63
+ (0, schedule_1.Schedule)({
64
+ type: schedule_1.ScheduleType.ALL,
65
+ scheduleData: {
66
+ interval: 1000,
67
+ },
68
+ })
69
+ ], SyncProxyCacheWorker);
70
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiU3luY1Byb3h5Q2FjaGVXb3JrZXIuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9hcHAvcG9ydC9zY2hlZHVsZS9TeW5jUHJveHlDYWNoZVdvcmtlci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7QUFDQSxtREFBOEU7QUFDOUUsc0NBQXFDO0FBQ3JDLDRFQUF5RTtBQUN6RSxzREFBa0Q7QUFHbEQsSUFBSSxjQUFjLEdBQUcsQ0FBQyxDQUFDO0FBUWhCLElBQU0sb0JBQW9CLEdBQTFCLE1BQU0sb0JBQW9CO0lBVS9CLEtBQUssQ0FBQyxTQUFTO1FBQ2IsSUFBSSxJQUFJLENBQUMsTUFBTSxDQUFDLFFBQVEsQ0FBQyxRQUFRLEtBQUssb0JBQVEsQ0FBQyxLQUFLO1lBQUUsT0FBTztRQUM3RCxJQUFJLGNBQWMsSUFBSSxJQUFJLENBQUMsTUFBTSxDQUFDLFFBQVEsQ0FBQyxtQ0FBbUM7WUFBRSxPQUFPO1FBRXZGLGNBQWMsRUFBRSxDQUFDO1FBQ2pCLElBQUk7WUFDRixJQUFJLElBQUksR0FBRyxNQUFNLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxlQUFlLEVBQUUsQ0FBQztZQUMxRCxPQUFPLElBQUksRUFBRTtnQkFDWCxNQUFNLFNBQVMsR0FBRyxJQUFJLENBQUMsR0FBRyxFQUFFLENBQUM7Z0JBQzdCLElBQUksQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLHdJQUF3SSxFQUN2SixjQUFjLEVBQUUsSUFBSSxDQUFDLE1BQU0sRUFBRSxJQUFJLENBQUMsVUFBVSxFQUFFLElBQUksQ0FBQyxRQUFRLEVBQUUsSUFBSSxDQUFDLElBQUksRUFBRSxJQUFJLENBQUMsU0FBUyxFQUN0RixTQUFTLEdBQUcsSUFBSSxDQUFDLFNBQVMsQ0FBQyxPQUFPLEVBQUUsQ0FBQyxDQUFDO2dCQUN4QyxNQUFNLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxXQUFXLENBQUMsSUFBSSxDQUFDLENBQUM7Z0JBQy9DLE1BQU0sR0FBRyxHQUFHLElBQUksQ0FBQyxHQUFHLEVBQUUsR0FBRyxTQUFTLENBQUM7Z0JBQ25DLElBQUksQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLCtGQUErRixFQUM5RyxjQUFjLEVBQUUsSUFBSSxDQUFDLE1BQU0sRUFBRSxJQUFJLENBQUMsVUFBVSxFQUFFLEdBQUcsQ0FBQyxDQUFDO2dCQUNyRCxJQUFJLGNBQWMsSUFBSSxJQUFJLENBQUMsTUFBTSxDQUFDLFFBQVEsQ0FBQyxtQ0FBbUMsRUFBRTtvQkFDOUUsSUFBSSxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMseUdBQXlHLEVBQ3hILGNBQWMsRUFBRSxJQUFJLENBQUMsTUFBTSxDQUFDLFFBQVEsQ0FBQyxtQ0FBbUMsQ0FBQyxDQUFDO29CQUM1RSxNQUFNO2lCQUNQO2dCQUNELGdCQUFnQjtnQkFDaEIsSUFBSSxHQUFHLE1BQU0sSUFBSSxDQUFDLGlCQUFpQixDQUFDLGVBQWUsRUFBRSxDQUFDO2FBQ3ZEO1NBQ0Y7UUFBQyxPQUFPLEdBQUcsRUFBRTtZQUNaLElBQUksQ0FBQyxNQUFNLENBQUMsS0FBSyxDQUFDLDJEQUEyRCxFQUFFLGNBQWMsRUFBRSxHQUFHLENBQUMsQ0FBQztTQUNyRztnQkFBUztZQUNSLGNBQWMsRUFBRSxDQUFDO1NBQ2xCO0lBQ0gsQ0FBQztDQUNGLENBQUE7QUF4Q1ksb0RBQW9CO0FBRWQ7SUFEaEIsSUFBQSxhQUFNLEdBQUU7OEJBQzJCLHFDQUFpQjsrREFBQztBQUdyQztJQURoQixJQUFBLGFBQU0sR0FBRTs7b0RBQzZCO0FBR3JCO0lBRGhCLElBQUEsYUFBTSxHQUFFOztvREFDMEI7K0JBUnhCLG9CQUFvQjtJQU5oQyxJQUFBLG1CQUFRLEVBQWlCO1FBQ3hCLElBQUksRUFBRSx1QkFBWSxDQUFDLEdBQUc7UUFDdEIsWUFBWSxFQUFFO1lBQ1osUUFBUSxFQUFFLElBQUk7U0FDZjtLQUNGLENBQUM7R0FDVyxvQkFBb0IsQ0F3Q2hDIn0=
@@ -0,0 +1,14 @@
1
+ import type { ProxyCache as ProxyModeCachedFilesModel } from './model/ProxyCache';
2
+ import { ProxyCache as ProxyCacheEntity } from '../core/entity/ProxyCache';
3
+ import { AbstractRepository } from './AbstractRepository';
4
+ import { DIST_NAMES } from '../core/entity/Package';
5
+ import { PageOptions, PageResult } from '../core/util/EntityUtil';
6
+ export declare class ProxyCacheRepository extends AbstractRepository {
7
+ private readonly ProxyCache;
8
+ saveProxyCache(proxyCacheEntity: ProxyCacheEntity): Promise<ProxyModeCachedFilesModel>;
9
+ findProxyCache(fullname: string, fileType: DIST_NAMES, version?: string): Promise<ProxyCacheEntity | null>;
10
+ findProxyCaches(fullname: string, version?: string): Promise<import("leoric").Collection<ProxyModeCachedFilesModel>>;
11
+ listCachedFiles(page: PageOptions, fullname?: string): Promise<PageResult<ProxyCacheEntity>>;
12
+ removeProxyCache(fullname: string, fileType: string, version?: string): Promise<void>;
13
+ truncateProxyCache(): Promise<void>;
14
+ }
@@ -0,0 +1,75 @@
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
+ Object.defineProperty(exports, "__esModule", { value: true });
12
+ exports.ProxyCacheRepository = void 0;
13
+ const tegg_1 = require("@eggjs/tegg");
14
+ const ModelConvertor_1 = require("./util/ModelConvertor");
15
+ const ProxyCache_1 = require("../core/entity/ProxyCache");
16
+ const AbstractRepository_1 = require("./AbstractRepository");
17
+ const EntityUtil_1 = require("../core/util/EntityUtil");
18
+ let ProxyCacheRepository = class ProxyCacheRepository extends AbstractRepository_1.AbstractRepository {
19
+ async saveProxyCache(proxyCacheEntity) {
20
+ let model = proxyCacheEntity.version ?
21
+ await this.ProxyCache.findOne({ fullname: proxyCacheEntity.fullname, version: proxyCacheEntity.version, fileType: proxyCacheEntity.fileType }) :
22
+ await this.ProxyCache.findOne({ fullname: proxyCacheEntity.fullname, fileType: proxyCacheEntity.fileType });
23
+ if (model) {
24
+ model.updatedAt = proxyCacheEntity.updatedAt;
25
+ await model.save();
26
+ }
27
+ else {
28
+ try {
29
+ model = await ModelConvertor_1.ModelConvertor.convertEntityToModel(proxyCacheEntity, this.ProxyCache);
30
+ }
31
+ catch (e) {
32
+ e.message = '[ProxyCacheRepository] insert ProxyCache failed: ' + e.message;
33
+ throw e;
34
+ }
35
+ }
36
+ return model;
37
+ }
38
+ async findProxyCache(fullname, fileType, version) {
39
+ const model = version ? await this.ProxyCache.findOne({ fullname, version, fileType }) : await this.ProxyCache.findOne({ fullname, fileType });
40
+ if (model)
41
+ return ModelConvertor_1.ModelConvertor.convertModelToEntity(model, ProxyCache_1.ProxyCache);
42
+ return null;
43
+ }
44
+ // used by update & delete all cache
45
+ async findProxyCaches(fullname, version) {
46
+ const models = version ? await this.ProxyCache.find({ fullname, version }) : await this.ProxyCache.find({ fullname });
47
+ return models;
48
+ }
49
+ async listCachedFiles(page, fullname) {
50
+ const { offset, limit } = EntityUtil_1.EntityUtil.convertPageOptionsToLimitOption(page);
51
+ const count = fullname ? await this.ProxyCache.find({ fullname }).count() : await this.ProxyCache.find().count();
52
+ const models = fullname ? await this.ProxyCache.find({ fullname }).offset(offset).limit(limit) : await this.ProxyCache.find().offset(offset).limit(limit);
53
+ return {
54
+ count,
55
+ data: models.map(model => ModelConvertor_1.ModelConvertor.convertModelToEntity(model, ProxyCache_1.ProxyCache)),
56
+ };
57
+ }
58
+ async removeProxyCache(fullname, fileType, version) {
59
+ version ? await this.ProxyCache.remove({ fullname, version, fileType }) : await this.ProxyCache.remove({ fullname, fileType });
60
+ }
61
+ async truncateProxyCache() {
62
+ await this.ProxyCache.truncate();
63
+ }
64
+ };
65
+ exports.ProxyCacheRepository = ProxyCacheRepository;
66
+ __decorate([
67
+ (0, tegg_1.Inject)(),
68
+ __metadata("design:type", Object)
69
+ ], ProxyCacheRepository.prototype, "ProxyCache", void 0);
70
+ exports.ProxyCacheRepository = ProxyCacheRepository = __decorate([
71
+ (0, tegg_1.SingletonProto)({
72
+ accessLevel: tegg_1.AccessLevel.PUBLIC,
73
+ })
74
+ ], ProxyCacheRepository);
75
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiUHJveHlDYWNoZVJlcG9zaXRvcnkuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9hcHAvcmVwb3NpdG9yeS9Qcm94eUNhY2hlUmVwb3NpdG9yeS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7QUFBQSxzQ0FBa0U7QUFDbEUsMERBQXVEO0FBRXZELDBEQUEyRTtBQUMzRSw2REFBMEQ7QUFFMUQsd0RBQThFO0FBSXZFLElBQU0sb0JBQW9CLEdBQTFCLE1BQU0sb0JBQXFCLFNBQVEsdUNBQWtCO0lBSTFELEtBQUssQ0FBQyxjQUFjLENBQUMsZ0JBQWtDO1FBQ3JELElBQUksS0FBSyxHQUFHLGdCQUFnQixDQUFDLE9BQU8sQ0FBQyxDQUFDO1lBQ3BDLE1BQU0sSUFBSSxDQUFDLFVBQVUsQ0FBQyxPQUFPLENBQUMsRUFBRSxRQUFRLEVBQUUsZ0JBQWdCLENBQUMsUUFBUSxFQUFFLE9BQU8sRUFBRSxnQkFBZ0IsQ0FBQyxPQUFPLEVBQUUsUUFBUSxFQUFFLGdCQUFnQixDQUFDLFFBQVEsRUFBRSxDQUFDLENBQUMsQ0FBQztZQUNoSixNQUFNLElBQUksQ0FBQyxVQUFVLENBQUMsT0FBTyxDQUFDLEVBQUUsUUFBUSxFQUFFLGdCQUFnQixDQUFDLFFBQVEsRUFBRSxRQUFRLEVBQUUsZ0JBQWdCLENBQUMsUUFBUSxFQUFFLENBQUMsQ0FBQztRQUM5RyxJQUFJLEtBQUssRUFBRTtZQUNULEtBQUssQ0FBQyxTQUFTLEdBQUcsZ0JBQWdCLENBQUMsU0FBUyxDQUFDO1lBQzdDLE1BQU0sS0FBSyxDQUFDLElBQUksRUFBRSxDQUFDO1NBQ3BCO2FBQU07WUFDTCxJQUFJO2dCQUNGLEtBQUssR0FBRyxNQUFNLCtCQUFjLENBQUMsb0JBQW9CLENBQUMsZ0JBQWdCLEVBQUUsSUFBSSxDQUFDLFVBQVUsQ0FBQyxDQUFDO2FBQ3RGO1lBQUMsT0FBTyxDQUFDLEVBQUU7Z0JBQ1YsQ0FBQyxDQUFDLE9BQU8sR0FBRyxtREFBbUQsR0FBRyxD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
@@ -0,0 +1,11 @@
1
+ import { Bone } from 'leoric';
2
+ import { DIST_NAMES } from '../../core/entity/Package';
3
+ export declare class ProxyCache extends Bone {
4
+ id: bigint;
5
+ createdAt: Date;
6
+ updatedAt: Date;
7
+ fullname: string;
8
+ fileType: DIST_NAMES;
9
+ filePath: string;
10
+ version?: string;
11
+ }
@@ -0,0 +1,55 @@
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
+ Object.defineProperty(exports, "__esModule", { value: true });
12
+ exports.ProxyCache = void 0;
13
+ const orm_1 = require("@eggjs/tegg/orm");
14
+ const leoric_1 = require("leoric");
15
+ const Package_1 = require("../../core/entity/Package");
16
+ let ProxyCache = class ProxyCache extends leoric_1.Bone {
17
+ };
18
+ exports.ProxyCache = ProxyCache;
19
+ __decorate([
20
+ (0, orm_1.Attribute)(leoric_1.DataTypes.BIGINT, {
21
+ primary: true,
22
+ autoIncrement: true,
23
+ }),
24
+ __metadata("design:type", BigInt)
25
+ ], ProxyCache.prototype, "id", void 0);
26
+ __decorate([
27
+ (0, orm_1.Attribute)(leoric_1.DataTypes.DATE, { name: 'gmt_create' }),
28
+ __metadata("design:type", Date)
29
+ ], ProxyCache.prototype, "createdAt", void 0);
30
+ __decorate([
31
+ (0, orm_1.Attribute)(leoric_1.DataTypes.DATE, { name: 'gmt_modified' }),
32
+ __metadata("design:type", Date)
33
+ ], ProxyCache.prototype, "updatedAt", void 0);
34
+ __decorate([
35
+ (0, orm_1.Attribute)(leoric_1.DataTypes.STRING(214)),
36
+ __metadata("design:type", String)
37
+ ], ProxyCache.prototype, "fullname", void 0);
38
+ __decorate([
39
+ (0, orm_1.Attribute)(leoric_1.DataTypes.STRING(30)),
40
+ __metadata("design:type", String)
41
+ ], ProxyCache.prototype, "fileType", void 0);
42
+ __decorate([
43
+ (0, orm_1.Attribute)(leoric_1.DataTypes.STRING(512), {
44
+ unique: true,
45
+ }),
46
+ __metadata("design:type", String)
47
+ ], ProxyCache.prototype, "filePath", void 0);
48
+ __decorate([
49
+ (0, orm_1.Attribute)(leoric_1.DataTypes.STRING(214)),
50
+ __metadata("design:type", String)
51
+ ], ProxyCache.prototype, "version", void 0);
52
+ exports.ProxyCache = ProxyCache = __decorate([
53
+ (0, orm_1.Model)()
54
+ ], ProxyCache);
55
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiUHJveHlDYWNoZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL2FwcC9yZXBvc2l0b3J5L21vZGVsL1Byb3h5Q2FjaGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7O0FBQUEseUNBQW1EO0FBQ25ELG1DQUF5QztBQUN6Qyx1REFBdUQ7QUFHaEQsSUFBTSxVQUFVLEdBQWhCLE1BQU0sVUFBVyxTQUFRLGFBQUk7Q0EyQm5DLENBQUE7QUEzQlksZ0NBQVU7QUFLckI7SUFKQyxJQUFBLGVBQVMsRUFBQyxrQkFBUyxDQUFDLE1BQU0sRUFBRTtRQUMzQixPQUFPLEVBQUUsSUFBSTtRQUNiLGFBQWEsRUFBRSxJQUFJO0tBQ3BCLENBQUM7O3NDQUNTO0FBR1g7SUFEQyxJQUFBLGVBQVMsRUFBQyxrQkFBUyxDQUFDLElBQUksRUFBRSxFQUFFLElBQUksRUFBRSxZQUFZLEVBQUUsQ0FBQzs4QkFDdkMsSUFBSTs2Q0FBQztBQUdoQjtJQURDLElBQUEsZUFBUyxFQUFDLGtCQUFTLENBQUMsSUFBSSxFQUFFLEVBQUUsSUFBSSxFQUFFLGNBQWMsRUFBRSxDQUFDOzhCQUN6QyxJQUFJOzZDQUFDO0FBR2hCO0lBREMsSUFBQSxlQUFTLEVBQUMsa0JBQVMsQ0FBQyxNQUFNLENBQUMsR0FBRyxDQUFDLENBQUM7OzRDQUNoQjtBQUdqQjtJQURDLElBQUEsZUFBUyxFQUFDLGtCQUFTLENBQUMsTUFBTSxDQUFDLEVBQUUsQ0FBQyxDQUFDOzs0Q0FDWDtBQUtyQjtJQUhDLElBQUEsZUFBUyxFQUFDLGtCQUFTLENBQUMsTUFBTSxDQUFDLEdBQUcsQ0FBQyxFQUFFO1FBQ2hDLE1BQU0sRUFBRSxJQUFJO0tBQ2IsQ0FBQzs7NENBQ2U7QUFHakI7SUFEQyxJQUFBLGVBQVMsRUFBQyxrQkFBUyxDQUFDLE1BQU0sQ0FBQyxHQUFHLENBQUMsQ0FBQzs7MkNBQ2hCO3FCQXpCTixVQUFVO0lBRHRCLElBQUEsV0FBSyxHQUFFO0dBQ0ssVUFBVSxDQTJCdEIifQ==
@@ -117,12 +117,9 @@ declare const binaries: {
117
117
  readonly 'skia-canvas': {
118
118
  readonly category: "skia-canvas";
119
119
  readonly description: "A canvas environment for Node";
120
- readonly type: BinaryType.NodePreGyp;
120
+ readonly type: BinaryType.GitHub;
121
121
  readonly repo: "samizdatco/skia-canvas";
122
- readonly distUrl: "https://skia-canvas.s3.us-east-1.amazonaws.com";
123
- readonly options: {
124
- readonly requiredNapiVersions: true;
125
- };
122
+ readonly distUrl: "https://github.com/samizdatco/skia-canvas/releases";
126
123
  };
127
124
  readonly wrtc: {
128
125
  readonly category: "wrtc";
@@ -110,12 +110,9 @@ const binaries = {
110
110
  'skia-canvas': {
111
111
  category: 'skia-canvas',
112
112
  description: 'A canvas environment for Node',
113
- type: Binary_1.BinaryType.NodePreGyp,
113
+ type: Binary_1.BinaryType.GitHub,
114
114
  repo: 'samizdatco/skia-canvas',
115
- distUrl: 'https://skia-canvas.s3.us-east-1.amazonaws.com',
116
- options: {
117
- requiredNapiVersions: true,
118
- },
115
+ distUrl: 'https://github.com/samizdatco/skia-canvas/releases',
119
116
  },
120
117
  wrtc: {
121
118
  category: 'wrtc',
@@ -904,4 +901,4 @@ const BinaryConfigMap = {
904
901
  ...binaries,
905
902
  };
906
903
  exports.default = BinaryConfigMap;
907
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmluYXJpZXMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9jb25maWcvYmluYXJpZXMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7QUFBQSxzREFBdUQ7QUEyQnZELE1BQU0sUUFBUSxHQUFHO0lBQ2YsYUFBYTtJQUNiLElBQUksRUFBRTtRQUNKLFFBQVEsRUFBRSxNQUFNO1FBQ2hCLFdBQVcsRUFBRSxzS0FBc0s7UUFDbkwsSUFBSSxFQUFFLG1CQUFVLENBQUMsSUFBSTtRQUNyQixJQUFJLEVBQUUsWUFBWTtRQUNsQixPQUFPLEVBQUUscUJBQXFCO0tBQy9CO0lBQ0QsYUFBYTtJQUNiLElBQUksRUFBRTtRQUNKLFFBQVEsRUFBRSxNQUFNO1FBQ2hCLFdBQVcsRUFBRSwyRUFBMkU7UUFDeEYsSUFBSSxFQUFFLG1CQUFVLENBQUMsSUFBSTtRQUNyQixJQUFJLEVBQUUsYUFBYTtRQUNuQixPQUFPLEVBQUUseUJBQXlCO0tBQ25DO0lBQ0QsU0FBUyxFQUFFO1FBQ1QsUUFBUSxFQUFFLFNBQVM7UUFDbkIsV0FBVyxFQUFFLDJCQUEyQjtRQUN4QyxJQUFJLEVBQUUsbUJBQVUsQ0FBQyxJQUFJO1FBQ3JCLElBQUksRUFBRSxhQUFhO1FBQ25CLE9BQU8sRUFBRSxnQ0FBZ0M7S0FDMUM7SUFDRCxjQUFjLEVBQUU7UUFDZCxRQUFRLEVBQUUsY0FBYztRQUN4QixXQUFXLEVBQUUsdUJBQXVCO1FBQ3BDLElBQUksRUFBRSxtQkFBVSxDQUFDLElBQUk7UUFDckIsSUFBSSxFQUFFLGFBQWE7UUFDbkIsT0FBTyxFQUFFLHFDQUFxQztLQUMvQztJQUNELHdCQUF3QixFQUFFO1FBQ3hCLFFBQVEsRUFBRSx3QkFBd0I7UUFDbEMsV0FBVyxFQUFFLHlFQUF5RTtRQUN0RixJQUFJLEVBQUUsbUJBQVUsQ0FBQyxJQUFJO1FBQ3JCLElBQUksRUFBRSwwQkFBMEI7UUFDaEMsT0FBTyxFQUFFLHVEQUF1RDtLQUNqRTtJQUNELE9BQU8sRUFBRTtRQUNQLFFBQVEs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
904
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmluYXJpZXMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9jb25maWcvYmluYXJpZXMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7QUFBQSxzREFBdUQ7QUEyQnZELE1BQU0sUUFBUSxHQUFHO0lBQ2YsYUFBYTtJQUNiLElBQUksRUFBRTtRQUNKLFFBQVEsRUFBRSxNQUFNO1FBQ2hCLFdBQVcsRUFBRSxzS0FBc0s7UUFDbkwsSUFBSSxFQUFFLG1CQUFVLENBQUMsSUFBSTtRQUNyQixJQUFJLEVBQUUsWUFBWTtRQUNsQixPQUFPLEVBQUUscUJBQXFCO0tBQy9CO0lBQ0QsYUFBYTtJQUNiLElBQUksRUFBRTtRQUNKLFFBQVEsRUFBRSxNQUFNO1FBQ2hCLFdBQVcsRUFBRSwyRUFBMkU7UUFDeEYsSUFBSSxFQUFFLG1CQUFVLENBQUMsSUFBSTtRQUNyQixJQUFJLEVBQUUsYUFBYTtRQUNuQixPQUFPLEVBQUUseUJBQXlCO0tBQ25DO0lBQ0QsU0FBUyxFQUFFO1FBQ1QsUUFBUSxFQUFFLFNBQVM7UUFDbkIsV0FBVyxFQUFFLDJCQUEyQjtRQUN4QyxJQUFJLEVBQUUsbUJBQVUsQ0FBQyxJQUFJO1FBQ3JCLElBQUksRUFBRSxhQUFhO1FBQ25CLE9BQU8sRUFBRSxnQ0FBZ0M7S0FDMUM7SUFDRCxjQUFjLEVBQUU7UUFDZCxRQUFRLEVBQUUsY0FBYztRQUN4QixXQUFXLEVBQUUsdUJBQXVCO1FBQ3BDLElBQUksRUFBRSxtQkFBVSxDQUFDLElBQUk7UUFDckIsSUFBSSxFQUFFLGFBQWE7UUFDbkIsT0FBTyxFQUFFLHFDQUFxQztLQUMvQztJQUNELHdCQUF3QixFQUFFO1FBQ3hCLFFBQVEsRUFBRSx3QkFBd0I7UUFDbEMsV0FBVyxFQUFFLHlFQUF5RTtRQUN0RixJQUFJLEVBQUUsbUJBQVUsQ0FBQyxJQUFJO1FBQ3JCLElBQUksRUFBRSwwQkFBMEI7UUFDaEMsT0FBTyxFQUFFLHVEQUF1RDtLQUNqRTtJQUNELE9BQU8sRUFBRTtRQUNQLFFBQVEs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
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "cnpmcore",
3
- "version": "3.62.2",
3
+ "version": "3.63.1",
4
4
  "description": "npm core",
5
5
  "files": [
6
6
  "dist/**/*"
@@ -70,6 +70,7 @@
70
70
  "dependencies": {
71
71
  "@eggjs/tegg": "^3.12.0",
72
72
  "@eggjs/tegg-aop-plugin": "^3.12.0",
73
+ "@eggjs/tegg-background-task": "^3.29.0",
73
74
  "@eggjs/tegg-config": "^3.12.0",
74
75
  "@eggjs/tegg-controller-plugin": "^3.12.0",
75
76
  "@eggjs/tegg-eventbus-plugin": "^3.12.0",