cnpmcore 0.0.2 → 1.2.0
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.
- package/History.md +19 -0
- package/LICENSE +1 -1
- package/README.md +13 -4
- package/dist/app/common/AbstractService.d.ts +5 -0
- package/dist/app/{port/type/BaseController.js → common/AbstractService.js} +11 -9
- package/dist/app/common/FileUtil.d.ts +15 -0
- package/dist/app/common/FileUtil.js +77 -0
- package/dist/app/common/PackageUtil.d.ts +9 -0
- package/dist/app/common/PackageUtil.js +38 -16
- package/dist/app/common/SyncUtil.d.ts +2 -0
- package/dist/app/common/SyncUtil.js +17 -0
- package/dist/app/common/UserUtil.d.ts +5 -0
- package/dist/app/common/UserUtil.js +72 -0
- package/dist/app/common/adapter/BugVersionStore.d.ts +7 -0
- package/dist/app/common/adapter/BugVersionStore.js +28 -0
- package/dist/app/common/adapter/CacheAdapter.d.ts +13 -0
- package/dist/app/common/adapter/CacheAdapter.js +78 -0
- package/dist/app/common/adapter/NFSAdapter.d.ts +16 -0
- package/dist/app/common/adapter/NFSAdapter.js +62 -22
- package/dist/app/common/adapter/NPMRegistry.d.ts +78 -0
- package/dist/app/common/adapter/NPMRegistry.js +98 -0
- package/dist/app/common/adapter/QueueAdapter.d.ts +7 -0
- package/dist/app/common/adapter/QueueAdapter.js +37 -0
- package/dist/app/common/adapter/binary/AbstractBinary.d.ts +33 -0
- package/dist/app/common/adapter/binary/AbstractBinary.js +76 -0
- package/dist/app/common/adapter/binary/ApiBinary.d.ts +8 -0
- package/dist/app/common/adapter/binary/ApiBinary.js +31 -0
- package/dist/app/common/adapter/binary/BucketBinary.d.ts +5 -0
- package/dist/app/common/adapter/binary/BucketBinary.js +77 -0
- package/dist/app/common/adapter/binary/CypressBinary.d.ts +5 -0
- package/dist/app/common/adapter/binary/CypressBinary.js +63 -0
- package/dist/app/common/adapter/binary/ElectronBinary.d.ts +5 -0
- package/dist/app/common/adapter/binary/ElectronBinary.js +44 -0
- package/dist/app/common/adapter/binary/GithubBinary.d.ts +7 -0
- package/dist/app/common/adapter/binary/GithubBinary.js +93 -0
- package/dist/app/common/adapter/binary/ImageminBinary.d.ts +5 -0
- package/dist/app/common/adapter/binary/ImageminBinary.js +96 -0
- package/dist/app/common/adapter/binary/NodeBinary.d.ts +4 -0
- package/dist/app/common/adapter/binary/NodeBinary.js +41 -0
- package/dist/app/common/adapter/binary/NodePreGypBinary.d.ts +5 -0
- package/dist/app/common/adapter/binary/NodePreGypBinary.js +136 -0
- package/dist/app/common/adapter/binary/NwjsBinary.d.ts +6 -0
- package/dist/app/common/adapter/binary/NwjsBinary.js +47 -0
- package/dist/app/common/adapter/binary/PlaywrightBinary.d.ts +5 -0
- package/dist/app/common/adapter/binary/PlaywrightBinary.js +214 -0
- package/dist/app/common/adapter/binary/PuppeteerBinary.d.ts +6 -0
- package/dist/app/common/adapter/binary/PuppeteerBinary.js +125 -0
- package/dist/app/common/adapter/binary/SqlcipherBinary.d.ts +5 -0
- package/dist/app/common/adapter/binary/SqlcipherBinary.js +78 -0
- package/dist/app/common/aop/AsyncTimer.d.ts +9 -0
- package/dist/app/common/aop/AsyncTimer.js +36 -0
- package/dist/app/common/constants.d.ts +2 -0
- package/dist/app/common/constants.js +6 -0
- package/dist/app/common/dayjs.d.ts +2 -0
- package/dist/app/common/dayjs.js +10 -0
- package/dist/app/common/enum/Task.d.ts +12 -0
- package/dist/app/common/enum/Task.js +18 -0
- package/dist/app/common/enum/User.d.ts +5 -0
- package/dist/app/common/enum/User.js +10 -0
- package/dist/app/common/typing.d.ts +28 -0
- package/dist/app/common/typing.js +3 -0
- package/dist/app/core/entity/Binary.d.ts +28 -0
- package/dist/app/core/entity/Binary.js +29 -0
- package/dist/app/core/entity/BugVersion.d.ts +14 -0
- package/dist/app/core/entity/BugVersion.js +43 -0
- package/dist/app/core/entity/Change.d.ts +17 -0
- package/dist/app/core/entity/Change.js +20 -0
- package/dist/app/core/entity/Dist.d.ts +21 -0
- package/dist/app/core/entity/Dist.js +1 -2
- package/dist/app/core/entity/Entity.d.ts +11 -0
- package/dist/app/core/entity/Entity.js +3 -3
- package/dist/app/core/entity/Package.d.ts +45 -0
- package/dist/app/core/entity/Package.js +33 -25
- package/dist/app/core/entity/PackageTag.d.ts +17 -0
- package/dist/app/core/entity/PackageVersion.d.ts +26 -0
- package/dist/app/core/entity/PackageVersionBlock.d.ts +17 -0
- package/dist/app/core/entity/PackageVersionBlock.js +20 -0
- package/dist/app/core/entity/PackageVersionManifest.d.ts +17 -0
- package/dist/app/core/entity/PackageVersionManifest.js +20 -0
- package/dist/app/core/entity/Task.d.ts +43 -0
- package/dist/app/core/entity/Task.js +94 -0
- package/dist/app/core/entity/Token.d.ts +24 -0
- package/dist/app/core/entity/Token.js +23 -0
- package/dist/app/core/entity/User.d.ts +25 -0
- package/dist/app/core/entity/User.js +24 -0
- package/dist/app/core/event/BugVersionFixHandler.d.ts +6 -0
- package/dist/app/core/event/BugVersionFixHandler.js +42 -0
- package/dist/app/core/event/CacheCleaner.d.ts +38 -0
- package/dist/app/core/event/CacheCleaner.js +119 -0
- package/dist/app/core/event/ChangesStream.d.ts +32 -0
- package/dist/app/core/event/ChangesStream.js +106 -0
- package/dist/app/core/event/StoreManifest.d.ts +11 -0
- package/dist/app/core/event/StoreManifest.js +54 -0
- package/dist/app/core/event/index.d.ts +27 -0
- package/dist/app/core/event/index.js +11 -3
- package/dist/app/core/service/BinarySyncerService.d.ts +23 -0
- package/dist/app/core/service/BinarySyncerService.js +281 -0
- package/dist/app/core/service/BugVersionService.d.ts +11 -0
- package/dist/app/core/service/BugVersionService.js +86 -0
- package/dist/app/core/service/CacheService.d.ts +33 -0
- package/dist/app/core/service/CacheService.js +75 -0
- package/dist/app/core/service/ChangesStreamService.d.ts +11 -0
- package/dist/app/core/service/ChangesStreamService.js +186 -0
- package/dist/app/core/service/PackageManagerService.d.ts +83 -0
- package/dist/app/core/service/PackageManagerService.js +675 -78
- package/dist/app/core/service/PackageSyncerService.d.ts +24 -0
- package/dist/app/core/service/PackageSyncerService.js +667 -0
- package/dist/app/core/service/TaskService.d.ts +22 -0
- package/dist/app/core/service/TaskService.js +142 -0
- package/dist/app/core/service/UserService.d.ts +36 -0
- package/dist/app/core/service/UserService.js +120 -0
- package/dist/app/core/util/EntityUtil.d.ts +8 -0
- package/dist/app/core/util/EntityUtil.js +3 -3
- package/dist/app/infra/NFSClientAdapter.d.ts +18 -0
- package/dist/app/infra/NFSClientAdapter.js +74 -0
- package/dist/app/infra/package.json +6 -0
- package/dist/app/port/UserRoleManager.d.ts +24 -0
- package/dist/app/port/UserRoleManager.js +146 -0
- package/dist/app/port/controller/AbstractController.d.ts +32 -0
- package/dist/app/port/controller/AbstractController.js +112 -0
- package/dist/app/port/controller/BinarySyncController.d.ts +36 -0
- package/dist/app/port/controller/BinarySyncController.js +123 -0
- package/dist/app/port/controller/ChangesStreamController.d.ts +13 -0
- package/dist/app/port/controller/ChangesStreamController.js +53 -0
- package/dist/app/port/controller/DownloadController.d.ts +18 -0
- package/dist/app/port/controller/DownloadController.js +134 -0
- package/dist/app/port/controller/HomeController.d.ts +37 -0
- package/dist/app/port/controller/HomeController.js +72 -0
- package/dist/app/port/controller/PackageBlockController.d.ts +24 -0
- package/dist/app/port/controller/PackageBlockController.js +108 -0
- package/dist/app/port/controller/PackageSyncController.d.ts +35 -0
- package/dist/app/port/controller/PackageSyncController.js +205 -0
- package/dist/app/port/controller/PackageTagController.d.ts +12 -0
- package/dist/app/port/controller/PackageTagController.js +88 -0
- package/dist/app/port/controller/TokenController.d.ts +38 -0
- package/dist/app/port/controller/TokenController.js +125 -0
- package/dist/app/port/controller/UserController.d.ts +39 -0
- package/dist/app/port/controller/UserController.js +223 -0
- package/dist/app/port/controller/package/DownloadPackageVersionTar.d.ts +9 -0
- package/dist/app/port/controller/package/DownloadPackageVersionTar.js +82 -0
- package/dist/app/port/controller/package/RemovePackageVersionController.d.ts +8 -0
- package/dist/app/port/controller/package/RemovePackageVersionController.js +56 -0
- package/dist/app/port/controller/package/SavePackageVersionController.d.ts +48 -0
- package/dist/app/port/controller/package/SavePackageVersionController.js +221 -0
- package/dist/app/port/controller/package/ShowPackageController.d.ts +8 -0
- package/dist/app/port/controller/package/ShowPackageController.js +99 -0
- package/dist/app/port/controller/package/ShowPackageVersionController.d.ts +6 -0
- package/dist/app/port/controller/package/ShowPackageVersionController.js +55 -0
- package/dist/app/port/controller/package/UpdatePackageController.d.ts +17 -0
- package/dist/app/port/controller/package/UpdatePackageController.js +68 -0
- package/dist/app/port/middleware/AlwaysAuth.d.ts +2 -0
- package/dist/app/port/middleware/AlwaysAuth.js +17 -0
- package/dist/app/port/middleware/ErrorHandler.d.ts +2 -0
- package/dist/app/port/middleware/ErrorHandler.js +27 -5
- package/dist/app/port/middleware/Tracing.d.ts +2 -0
- package/dist/app/port/middleware/Tracing.js +22 -0
- package/dist/app/port/middleware/index.d.ts +2 -0
- package/dist/app/port/middleware/index.js +22 -0
- package/dist/app/port/typebox.d.ts +29 -0
- package/dist/app/port/typebox.js +71 -0
- package/dist/app/repository/AbstractRepository.d.ts +4 -0
- package/dist/app/repository/AbstractRepository.js +17 -0
- package/dist/app/repository/BinaryRepository.d.ts +7 -0
- package/dist/app/repository/BinaryRepository.js +45 -0
- package/dist/app/repository/ChangeRepository.d.ts +8 -0
- package/dist/app/repository/ChangeRepository.js +31 -0
- package/dist/app/repository/DistRepository.d.ts +15 -0
- package/dist/app/repository/DistRepository.js +69 -0
- package/dist/app/repository/PackageRepository.d.ts +39 -0
- package/dist/app/repository/PackageRepository.js +223 -36
- package/dist/app/repository/PackageVersionBlockRepository.d.ts +10 -0
- package/dist/app/repository/PackageVersionBlockRepository.js +51 -0
- package/dist/app/repository/PackageVersionDownloadRepository.d.ts +7 -0
- package/dist/app/repository/PackageVersionDownloadRepository.js +77 -0
- package/dist/app/repository/TaskRepository.d.ts +10 -0
- package/dist/app/repository/TaskRepository.js +82 -0
- package/dist/app/repository/UserRepository.d.ts +15 -0
- package/dist/app/repository/UserRepository.js +81 -0
- package/dist/app/repository/model/Binary.d.ts +13 -0
- package/dist/app/repository/model/Binary.js +53 -0
- package/dist/app/repository/model/Change.d.ts +10 -0
- package/dist/app/repository/model/Change.js +44 -0
- package/dist/app/repository/model/Dist.d.ts +12 -0
- package/dist/app/repository/model/Dist.js +10 -13
- package/dist/app/repository/model/HistoryTask.d.ts +18 -0
- package/dist/app/repository/model/HistoryTask.js +65 -0
- package/dist/app/repository/model/Maintainer.d.ts +8 -0
- package/dist/app/repository/model/Maintainer.js +36 -0
- package/dist/app/repository/model/Package.d.ts +13 -0
- package/dist/app/repository/model/Package.js +18 -9
- package/dist/app/repository/model/PackageDep.d.ts +11 -0
- package/dist/app/repository/model/PackageDep.js +9 -9
- package/dist/app/repository/model/PackageTag.d.ts +10 -0
- package/dist/app/repository/model/PackageTag.js +9 -9
- package/dist/app/repository/model/PackageVersion.d.ts +14 -0
- package/dist/app/repository/model/PackageVersion.js +9 -9
- package/dist/app/repository/model/PackageVersionBlock.d.ts +10 -0
- package/dist/app/repository/model/PackageVersionBlock.js +44 -0
- package/dist/app/repository/model/PackageVersionDownload.d.ts +40 -0
- package/dist/app/repository/model/PackageVersionDownload.js +132 -0
- package/dist/app/repository/model/PackageVersionManifest.d.ts +10 -0
- package/dist/app/repository/model/PackageVersionManifest.js +46 -0
- package/dist/app/repository/model/Task.d.ts +18 -0
- package/dist/app/repository/model/Task.js +65 -0
- package/dist/app/repository/model/Token.d.ts +13 -0
- package/dist/app/repository/model/Token.js +55 -0
- package/dist/app/repository/model/User.d.ts +14 -0
- package/dist/app/repository/model/User.js +56 -0
- package/dist/app/repository/util/EntityProperty.d.ts +1 -0
- package/dist/app/repository/util/ModelConvertor.d.ts +7 -0
- package/dist/app/repository/util/ModelConvertor.js +35 -2
- package/dist/app/repository/util/ModelConvertorUtil.d.ts +8 -0
- package/dist/app/schedule/ChangesStreamWorker.d.ts +8 -0
- package/dist/app/schedule/ChangesStreamWorker.js +27 -0
- package/dist/app/schedule/CheckRecentlyUpdatedPackages.d.ts +8 -0
- package/dist/app/schedule/CheckRecentlyUpdatedPackages.js +66 -0
- package/dist/app/schedule/CleanTempDir.d.ts +8 -0
- package/dist/app/schedule/CleanTempDir.js +48 -0
- package/dist/app/schedule/CreateSyncBinaryTask.d.ts +8 -0
- package/dist/app/schedule/CreateSyncBinaryTask.js +34 -0
- package/dist/app/schedule/SavePackageVersionDownloadCounter.d.ts +8 -0
- package/dist/app/schedule/SavePackageVersionDownloadCounter.js +21 -0
- package/dist/app/schedule/SyncBinaryWorker.d.ts +8 -0
- package/dist/app/schedule/SyncBinaryWorker.js +30 -0
- package/dist/app/schedule/SyncPackageWorker.d.ts +8 -0
- package/dist/app/schedule/SyncPackageWorker.js +44 -0
- package/dist/app/schedule/TaskTimeoutHandler.d.ts +9 -0
- package/dist/app/schedule/TaskTimeoutHandler.js +27 -0
- package/dist/app/schedule/UpdateTotalData.d.ts +9 -0
- package/dist/app/schedule/UpdateTotalData.js +103 -0
- package/dist/app.d.ts +11 -0
- package/dist/app.js +22 -0
- package/dist/config/binaries.d.ts +38 -0
- package/dist/config/binaries.js +810 -0
- package/dist/config/config.default.d.ts +3 -0
- package/dist/config/config.default.js +128 -9
- package/dist/config/config.unittest.d.ts +3 -0
- package/dist/config/config.unittest.js +18 -0
- package/dist/config/plugin.d.ts +3 -0
- package/dist/config/plugin.js +19 -3
- package/package.json +76 -21
- package/dist/app/common/adapter/NFSClientAdapter.js +0 -43
- package/dist/app/port/controller/PackageController.js +0 -273
|
@@ -13,69 +13,242 @@ const Package_2 = require("../core/entity/Package");
|
|
|
13
13
|
const ModelConvertor_1 = require("./util/ModelConvertor");
|
|
14
14
|
const PackageVersion_1 = require("../core/entity/PackageVersion");
|
|
15
15
|
const PackageVersion_2 = require("./model/PackageVersion");
|
|
16
|
+
const PackageVersionManifest_1 = require("./model/PackageVersionManifest");
|
|
16
17
|
const Dist_1 = require("./model/Dist");
|
|
17
18
|
const Dist_2 = require("../core/entity/Dist");
|
|
18
19
|
const PackageTag_1 = require("../core/entity/PackageTag");
|
|
19
20
|
const PackageTag_2 = require("./model/PackageTag");
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
21
|
+
const Maintainer_1 = require("./model/Maintainer");
|
|
22
|
+
const User_1 = require("./model/User");
|
|
23
|
+
const User_2 = require("../core/entity/User");
|
|
24
|
+
const AbstractRepository_1 = require("./AbstractRepository");
|
|
25
|
+
let PackageRepository = class PackageRepository extends AbstractRepository_1.AbstractRepository {
|
|
26
|
+
async findPackage(scope, name) {
|
|
27
|
+
const model = await Package_1.Package.findOne({ scope, name });
|
|
28
|
+
if (!model)
|
|
29
|
+
return null;
|
|
30
|
+
const manifestsDistModel = model.manifestsDistId ? await Dist_1.Dist.findOne({ distId: model.manifestsDistId }) : null;
|
|
31
|
+
const abbreviatedsDistModel = model.abbreviatedsDistId ? await Dist_1.Dist.findOne({ distId: model.abbreviatedsDistId }) : null;
|
|
32
|
+
const data = {
|
|
33
|
+
manifestsDist: manifestsDistModel && ModelConvertor_1.ModelConvertor.convertModelToEntity(manifestsDistModel, Dist_2.Dist),
|
|
34
|
+
abbreviatedsDist: abbreviatedsDistModel && ModelConvertor_1.ModelConvertor.convertModelToEntity(abbreviatedsDistModel, Dist_2.Dist),
|
|
35
|
+
};
|
|
36
|
+
const entity = ModelConvertor_1.ModelConvertor.convertModelToEntity(model, Package_2.Package, data);
|
|
37
|
+
return entity;
|
|
38
|
+
}
|
|
39
|
+
async findPackageId(scope, name) {
|
|
40
|
+
const model = await Package_1.Package.findOne({ scope, name }).select('packageId');
|
|
41
|
+
if (!model)
|
|
42
|
+
return null;
|
|
43
|
+
return model.packageId;
|
|
23
44
|
}
|
|
24
45
|
async savePackage(pkgEntity) {
|
|
25
46
|
if (pkgEntity.id) {
|
|
26
47
|
const model = await Package_1.Package.findOne({ id: pkgEntity.id });
|
|
27
48
|
if (!model)
|
|
28
49
|
return;
|
|
29
|
-
|
|
30
|
-
model.gmtModified = new Date();
|
|
31
|
-
await model.save();
|
|
50
|
+
await ModelConvertor_1.ModelConvertor.saveEntityToModel(pkgEntity, model);
|
|
32
51
|
}
|
|
33
52
|
else {
|
|
34
53
|
const model = await ModelConvertor_1.ModelConvertor.convertEntityToModel(pkgEntity, Package_1.Package);
|
|
35
|
-
|
|
54
|
+
this.logger.info('[PackageRepository:savePackage:new] id: %s, packageId: %s', model.id, model.packageId);
|
|
55
|
+
}
|
|
56
|
+
}
|
|
57
|
+
async savePackageDist(pkgEntity, isFullManifests) {
|
|
58
|
+
const dist = isFullManifests ? pkgEntity.manifestsDist : pkgEntity.abbreviatedsDist;
|
|
59
|
+
if (!dist)
|
|
60
|
+
return;
|
|
61
|
+
if (dist.id) {
|
|
62
|
+
const model = await Dist_1.Dist.findOne({ id: dist.id });
|
|
63
|
+
if (!model)
|
|
64
|
+
return;
|
|
65
|
+
await ModelConvertor_1.ModelConvertor.saveEntityToModel(dist, model);
|
|
36
66
|
}
|
|
67
|
+
else {
|
|
68
|
+
const model = await ModelConvertor_1.ModelConvertor.convertEntityToModel(dist, Dist_1.Dist);
|
|
69
|
+
this.logger.info('[PackageRepository:savePackageDist:new] id: %s, distId: %s, packageId: %s', model.id, model.distId, pkgEntity.packageId);
|
|
70
|
+
}
|
|
71
|
+
await this.savePackage(pkgEntity);
|
|
72
|
+
}
|
|
73
|
+
async removePackageDist(pkgEntity, isFullManifests) {
|
|
74
|
+
const dist = isFullManifests ? pkgEntity.manifestsDist : pkgEntity.abbreviatedsDist;
|
|
75
|
+
if (!dist)
|
|
76
|
+
return;
|
|
77
|
+
const model = await Dist_1.Dist.findOne({ id: dist.id });
|
|
78
|
+
if (!model)
|
|
79
|
+
return;
|
|
80
|
+
await model.remove();
|
|
81
|
+
this.logger.info('[PackageRepository:removePackageDist:remove] id: %s, distId: %s, packageId: %s', model.id, model.distId, pkgEntity.packageId);
|
|
82
|
+
Reflect.set(dist, 'distId', null);
|
|
83
|
+
await this.savePackage(pkgEntity);
|
|
84
|
+
}
|
|
85
|
+
// Package Maintainers
|
|
86
|
+
// return true meaning create new record
|
|
87
|
+
async savePackageMaintainer(packageId, userId) {
|
|
88
|
+
let model = await Maintainer_1.Maintainer.findOne({ packageId, userId });
|
|
89
|
+
if (!model) {
|
|
90
|
+
model = await Maintainer_1.Maintainer.create({ packageId, userId });
|
|
91
|
+
this.logger.info('[PackageRepository:addPackageMaintainer:new] id: %s, packageId: %s, userId: %s', model.id, model.packageId, model.userId);
|
|
92
|
+
return true;
|
|
93
|
+
}
|
|
94
|
+
}
|
|
95
|
+
async listPackageMaintainers(packageId) {
|
|
96
|
+
const models = await Maintainer_1.Maintainer.find({ packageId });
|
|
97
|
+
const userModels = await User_1.User.find({ userId: models.map(m => m.userId) });
|
|
98
|
+
return userModels.map(user => ModelConvertor_1.ModelConvertor.convertModelToEntity(user, User_2.User));
|
|
99
|
+
}
|
|
100
|
+
async replacePackageMaintainers(packageId, userIds) {
|
|
101
|
+
await Maintainer_1.Maintainer.transaction(async () => {
|
|
102
|
+
// delete exists
|
|
103
|
+
// const removeCount = await MaintainerModel.remove({ packageId }, true, { transaction });
|
|
104
|
+
const removeCount = await Maintainer_1.Maintainer.remove({ packageId });
|
|
105
|
+
this.logger.info('[PackageRepository:replacePackageMaintainers:remove] %d rows, packageId: %s', removeCount, packageId);
|
|
106
|
+
// add news
|
|
107
|
+
for (const userId of userIds) {
|
|
108
|
+
// const model = await MaintainerModel.create({ packageId, userId }, transaction);
|
|
109
|
+
const model = await Maintainer_1.Maintainer.create({ packageId, userId });
|
|
110
|
+
this.logger.info('[PackageRepository:replacePackageMaintainers:new] id: %s, packageId: %s, userId: %s', model.id, model.packageId, model.userId);
|
|
111
|
+
}
|
|
112
|
+
});
|
|
113
|
+
}
|
|
114
|
+
async removePackageMaintainer(packageId, userId) {
|
|
115
|
+
const model = await Maintainer_1.Maintainer.findOne({ packageId, userId });
|
|
116
|
+
if (model) {
|
|
117
|
+
await model.remove();
|
|
118
|
+
this.logger.info('[PackageRepository:removePackageMaintainer:remove] id: %s, packageId: %s, userId: %s', model.id, model.packageId, model.userId);
|
|
119
|
+
return true;
|
|
120
|
+
}
|
|
121
|
+
return false;
|
|
122
|
+
}
|
|
123
|
+
// TODO: support paging
|
|
124
|
+
async listPackagesByUserId(userId) {
|
|
125
|
+
const models = await Maintainer_1.Maintainer.find({ userId });
|
|
126
|
+
const packageModels = await Package_1.Package.find({ packageId: models.map(m => m.packageId) });
|
|
127
|
+
return packageModels.map(pkg => ModelConvertor_1.ModelConvertor.convertModelToEntity(pkg, Package_2.Package));
|
|
37
128
|
}
|
|
38
129
|
async createPackageVersion(pkgVersionEntity) {
|
|
39
130
|
await PackageVersion_2.PackageVersion.transaction(async function (transaction) {
|
|
40
|
-
|
|
131
|
+
await Promise.all([
|
|
132
|
+
// FIXME: transaction is not the options
|
|
41
133
|
ModelConvertor_1.ModelConvertor.convertEntityToModel(pkgVersionEntity, PackageVersion_2.PackageVersion, transaction),
|
|
42
134
|
ModelConvertor_1.ModelConvertor.convertEntityToModel(pkgVersionEntity.manifestDist, Dist_1.Dist, transaction),
|
|
43
135
|
ModelConvertor_1.ModelConvertor.convertEntityToModel(pkgVersionEntity.tarDist, Dist_1.Dist, transaction),
|
|
44
136
|
ModelConvertor_1.ModelConvertor.convertEntityToModel(pkgVersionEntity.readmeDist, Dist_1.Dist, transaction),
|
|
45
137
|
ModelConvertor_1.ModelConvertor.convertEntityToModel(pkgVersionEntity.abbreviatedDist, Dist_1.Dist, transaction),
|
|
46
138
|
]);
|
|
47
|
-
pkgVersionEntity.id = pkgVersionModel.id;
|
|
48
|
-
pkgVersionEntity.tarDist.id = tarDistModel.id;
|
|
49
|
-
pkgVersionEntity.manifestDist.id = manifestDistModel.id;
|
|
50
|
-
pkgVersionEntity.readmeDist.id = readmeDistModel.id;
|
|
51
|
-
pkgVersionEntity.abbreviatedDist.id = abbreviatedDistModel.id;
|
|
52
139
|
});
|
|
53
140
|
}
|
|
54
|
-
async
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
141
|
+
async savePackageVersion(pkgVersionEntity) {
|
|
142
|
+
// only abbreviatedDist and manifestDist allow to change, like `deprecated` message
|
|
143
|
+
let model = await Dist_1.Dist.findOne({ id: pkgVersionEntity.manifestDist.id });
|
|
144
|
+
if (model) {
|
|
145
|
+
await ModelConvertor_1.ModelConvertor.saveEntityToModel(pkgVersionEntity.manifestDist, model);
|
|
146
|
+
}
|
|
147
|
+
model = await Dist_1.Dist.findOne({ id: pkgVersionEntity.abbreviatedDist.id });
|
|
148
|
+
if (model) {
|
|
149
|
+
await ModelConvertor_1.ModelConvertor.saveEntityToModel(pkgVersionEntity.abbreviatedDist, model);
|
|
150
|
+
}
|
|
151
|
+
if (pkgVersionEntity.id) {
|
|
152
|
+
const model = await PackageVersion_2.PackageVersion.findOne({ id: pkgVersionEntity.id });
|
|
153
|
+
if (model) {
|
|
154
|
+
await ModelConvertor_1.ModelConvertor.saveEntityToModel(pkgVersionEntity, model);
|
|
155
|
+
}
|
|
156
|
+
}
|
|
60
157
|
}
|
|
61
158
|
async findPackageVersion(packageId, version) {
|
|
62
159
|
const pkgVersionModel = await PackageVersion_2.PackageVersion.findOne({ packageId, version });
|
|
63
160
|
if (!pkgVersionModel)
|
|
64
161
|
return null;
|
|
162
|
+
return await this.fillPackageVersionEntitiyData(pkgVersionModel);
|
|
163
|
+
}
|
|
164
|
+
async listPackageVersions(packageId) {
|
|
165
|
+
// FIXME: read all versions will hit the memory limit
|
|
166
|
+
const models = await PackageVersion_2.PackageVersion.find({ packageId }).order('id desc');
|
|
167
|
+
const entities = [];
|
|
168
|
+
for (const model of models) {
|
|
169
|
+
entities.push(await this.fillPackageVersionEntitiyData(model));
|
|
170
|
+
}
|
|
171
|
+
return entities;
|
|
172
|
+
}
|
|
173
|
+
async listPackageVersionNames(packageId) {
|
|
174
|
+
const rows = await PackageVersion_2.PackageVersion.find({ packageId }).select('version').order('id desc');
|
|
175
|
+
return rows.map(row => row.version);
|
|
176
|
+
}
|
|
177
|
+
// only for unittest now
|
|
178
|
+
async removePackageVersions(packageId) {
|
|
179
|
+
const removeCount = await PackageVersion_2.PackageVersion.remove({ packageId });
|
|
180
|
+
this.logger.info('[PackageRepository:removePackageVersions:remove] %d rows, packageId: %s', removeCount, packageId);
|
|
181
|
+
}
|
|
182
|
+
async removePackageVersion(pkgVersion) {
|
|
183
|
+
const distRemoveCount = await Dist_1.Dist.remove({
|
|
184
|
+
distId: [
|
|
185
|
+
pkgVersion.abbreviatedDist.distId,
|
|
186
|
+
pkgVersion.manifestDist.distId,
|
|
187
|
+
pkgVersion.readmeDist.distId,
|
|
188
|
+
pkgVersion.tarDist.distId,
|
|
189
|
+
],
|
|
190
|
+
});
|
|
191
|
+
const removeCount = await PackageVersion_2.PackageVersion.remove({ packageVersionId: pkgVersion.packageVersionId });
|
|
192
|
+
this.logger.info('[PackageRepository:removePackageVersion:remove] %d dist rows, %d rows, packageVersionId: %s', distRemoveCount, removeCount, pkgVersion.packageVersionId);
|
|
193
|
+
}
|
|
194
|
+
async savePackageVersionManifest(manifestEntity) {
|
|
195
|
+
let model = await PackageVersionManifest_1.PackageVersionManifest.findOne({ packageVersionId: manifestEntity.packageVersionId });
|
|
196
|
+
if (model) {
|
|
197
|
+
model.manifest = manifestEntity.manifest;
|
|
198
|
+
await model.save();
|
|
199
|
+
}
|
|
200
|
+
else {
|
|
201
|
+
model = await ModelConvertor_1.ModelConvertor.convertEntityToModel(manifestEntity, PackageVersionManifest_1.PackageVersionManifest);
|
|
202
|
+
this.logger.info('[PackageRepository:savePackageVersionManifest:new] id: %s, packageVersionId: %s', model.id, model.packageVersionId);
|
|
203
|
+
}
|
|
204
|
+
}
|
|
205
|
+
async findPackageVersionManifest(packageVersionId) {
|
|
206
|
+
const model = await PackageVersionManifest_1.PackageVersionManifest.findOne({ packageVersionId });
|
|
207
|
+
if (!model)
|
|
208
|
+
return null;
|
|
209
|
+
return ModelConvertor_1.ModelConvertor.convertModelToEntity(model, PackageVersionManifest_1.PackageVersionManifest);
|
|
210
|
+
}
|
|
211
|
+
async queryTotal() {
|
|
212
|
+
const lastPkg = await Package_1.Package.findOne().order('id', 'desc');
|
|
213
|
+
const lastVersion = await PackageVersion_2.PackageVersion.findOne().order('id', 'desc');
|
|
214
|
+
let packageCount = 0;
|
|
215
|
+
let packageVersionCount = 0;
|
|
216
|
+
let lastPackage = '';
|
|
217
|
+
let lastPackageVersion = '';
|
|
218
|
+
if (lastPkg) {
|
|
219
|
+
lastPackage = lastPkg.scope ? `${lastPkg.scope}/${lastPkg.name}` : lastPkg.name;
|
|
220
|
+
// FIXME: id will be out of range number
|
|
221
|
+
packageCount = Number(lastPkg.id);
|
|
222
|
+
}
|
|
223
|
+
if (lastVersion) {
|
|
224
|
+
const pkg = await Package_1.Package.findOne({ packageId: lastVersion.packageId });
|
|
225
|
+
if (pkg) {
|
|
226
|
+
const fullname = pkg.scope ? `${pkg.scope}/${pkg.name}` : pkg.name;
|
|
227
|
+
lastPackageVersion = `${fullname}@${lastVersion.version}`;
|
|
228
|
+
}
|
|
229
|
+
packageVersionCount = Number(lastVersion.id);
|
|
230
|
+
}
|
|
231
|
+
return {
|
|
232
|
+
packageCount,
|
|
233
|
+
packageVersionCount,
|
|
234
|
+
lastPackage,
|
|
235
|
+
lastPackageVersion,
|
|
236
|
+
};
|
|
237
|
+
}
|
|
238
|
+
async fillPackageVersionEntitiyData(model) {
|
|
65
239
|
const [tarDistModel, readmeDistModel, manifestDistModel, abbreviatedDistModel,] = await Promise.all([
|
|
66
|
-
Dist_1.Dist.findOne({ distId:
|
|
67
|
-
Dist_1.Dist.findOne({ distId:
|
|
68
|
-
Dist_1.Dist.findOne({ distId:
|
|
69
|
-
Dist_1.Dist.findOne({ distId:
|
|
240
|
+
Dist_1.Dist.findOne({ distId: model.tarDistId }),
|
|
241
|
+
Dist_1.Dist.findOne({ distId: model.readmeDistId }),
|
|
242
|
+
Dist_1.Dist.findOne({ distId: model.manifestDistId }),
|
|
243
|
+
Dist_1.Dist.findOne({ distId: model.abbreviatedDistId }),
|
|
70
244
|
]);
|
|
71
245
|
const data = {
|
|
72
|
-
tarDist: ModelConvertor_1.ModelConvertor.convertModelToEntity(tarDistModel, Dist_2.Dist),
|
|
73
|
-
readmeDist: ModelConvertor_1.ModelConvertor.convertModelToEntity(readmeDistModel, Dist_2.Dist),
|
|
74
|
-
manifestDist: ModelConvertor_1.ModelConvertor.convertModelToEntity(manifestDistModel, Dist_2.Dist),
|
|
75
|
-
abbreviatedDist: ModelConvertor_1.ModelConvertor.convertModelToEntity(abbreviatedDistModel, Dist_2.Dist),
|
|
246
|
+
tarDist: tarDistModel && ModelConvertor_1.ModelConvertor.convertModelToEntity(tarDistModel, Dist_2.Dist),
|
|
247
|
+
readmeDist: readmeDistModel && ModelConvertor_1.ModelConvertor.convertModelToEntity(readmeDistModel, Dist_2.Dist),
|
|
248
|
+
manifestDist: manifestDistModel && ModelConvertor_1.ModelConvertor.convertModelToEntity(manifestDistModel, Dist_2.Dist),
|
|
249
|
+
abbreviatedDist: abbreviatedDistModel && ModelConvertor_1.ModelConvertor.convertModelToEntity(abbreviatedDistModel, Dist_2.Dist),
|
|
76
250
|
};
|
|
77
|
-
|
|
78
|
-
return pkgVersionEntity;
|
|
251
|
+
return ModelConvertor_1.ModelConvertor.convertModelToEntity(model, PackageVersion_1.PackageVersion, data);
|
|
79
252
|
}
|
|
80
253
|
async findPackageTag(packageId, tag) {
|
|
81
254
|
const model = await PackageTag_2.PackageTag.findOne({ packageId, tag });
|
|
@@ -86,16 +259,30 @@ let PackageRepository = class PackageRepository {
|
|
|
86
259
|
}
|
|
87
260
|
async savePackageTag(packageTagEntity) {
|
|
88
261
|
if (packageTagEntity.id) {
|
|
89
|
-
const
|
|
90
|
-
if (!
|
|
262
|
+
const model = await PackageTag_2.PackageTag.findOne({ id: packageTagEntity.id });
|
|
263
|
+
if (!model)
|
|
91
264
|
return;
|
|
92
|
-
|
|
93
|
-
packageTagModel.gmtModified = packageTagEntity.gmtModified;
|
|
94
|
-
await packageTagModel.save();
|
|
265
|
+
await ModelConvertor_1.ModelConvertor.saveEntityToModel(packageTagEntity, model);
|
|
95
266
|
}
|
|
96
267
|
else {
|
|
97
|
-
await ModelConvertor_1.ModelConvertor.convertEntityToModel(packageTagEntity, PackageTag_2.PackageTag);
|
|
268
|
+
const model = await ModelConvertor_1.ModelConvertor.convertEntityToModel(packageTagEntity, PackageTag_2.PackageTag);
|
|
269
|
+
this.logger.info('[PackageRepository:savePackageTag:new] id: %s, packageTagId: %s, tags: %s => %s', model.id, model.packageTagId, model.tag, model.version);
|
|
270
|
+
}
|
|
271
|
+
}
|
|
272
|
+
async removePackageTag(packageTagEntity) {
|
|
273
|
+
const model = await PackageTag_2.PackageTag.findOne({ id: packageTagEntity.id });
|
|
274
|
+
if (!model)
|
|
275
|
+
return;
|
|
276
|
+
await model.remove();
|
|
277
|
+
this.logger.info('[PackageRepository:removePackageTag:remove] id: %s, packageTagId: %s, packageId: %s', model.id, model.packageTagId, model.packageId);
|
|
278
|
+
}
|
|
279
|
+
async listPackageTags(packageId) {
|
|
280
|
+
const models = await PackageTag_2.PackageTag.find({ packageId });
|
|
281
|
+
const entities = [];
|
|
282
|
+
for (const model of models) {
|
|
283
|
+
entities.push(ModelConvertor_1.ModelConvertor.convertModelToEntity(model, PackageTag_1.PackageTag));
|
|
98
284
|
}
|
|
285
|
+
return entities;
|
|
99
286
|
}
|
|
100
287
|
};
|
|
101
288
|
PackageRepository = __decorate([
|
|
@@ -104,4 +291,4 @@ PackageRepository = __decorate([
|
|
|
104
291
|
})
|
|
105
292
|
], PackageRepository);
|
|
106
293
|
exports.PackageRepository = PackageRepository;
|
|
107
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiUGFja2FnZVJlcG9zaXRvcnkuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9hcHAvcmVwb3NpdG9yeS9QYWNrYWdlUmVwb3NpdG9yeS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7QUFBQSxzQ0FBd0Q7QUFDeEQsNkNBQTBEO0FBQzFELG9EQUFrRTtBQUNsRSwwREFBdUQ7QUFDdkQsa0VBQXVGO0FBQ3ZGLDJEQUErRTtBQUMvRSx1Q0FBaUQ7QUFDakQsOENBQXlEO0FBQ3pELDBEQUEyRTtBQUMzRSxtREFBbUU7QUFPbkUsSUFBYSxpQkFBaUIsR0FBOUIsTUFBYSxpQkFBaUI7SUFDNUIsS0FBSyxDQUFDLGFBQWEsQ0FBQyxTQUF3QjtRQUMxQyxNQUFNLCtCQUFjLENBQUMsb0JBQW9CLENBQUMsU0FBUyxFQUFFLGlCQUFZLENBQUMsQ0FBQztJQUNyRSxDQUFDO0lBRUQsS0FBSyxDQUFDLFdBQVcsQ0FBQyxTQUF3QjtRQUN4QyxJQUFJLFNBQVMsQ0FBQyxFQUFFLEVBQUU7WUFDaEIsTUFBTSxLQUFLLEdBQUcsTUFBTSxpQkFBWSxDQUFDLE9BQU8sQ0FBQyxFQUFFLEVBQUUsRUFBRSxTQUFTLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FBQztZQUMvRCxJQUFJLENBQUMsS0FBSztnQkFBRSxPQUFPO1lBQ25CLEtBQUssQ0FBQyxXQUFXLEdBQUcsU0FBUyxDQUFDLFdBQVcsQ0FBQztZQUMxQyxLQUFLLENBQUMsV0FBVyxHQUFHLElBQUksSUFBSSxFQUFFLENBQUM7WUFDL0IsTUFBTSxLQUFLLENBQUMsSUFBSSxFQUFFLENBQUM7U0FDcEI7YUFBTTtZQUNMLE1BQU0sS0FBSyxHQUFHLE1BQU0sK0JBQWMsQ0FBQyxvQkFBb0IsQ0FBQyxTQUFTLEVBQUUsaUJBQVksQ0FBQyxDQUFDO1lBQ2pGLFNBQVMsQ0FBQyxFQUFFLEdBQUcsS0FBSyxDQUFDLEVBQUUsQ0FBQztTQUN6QjtJQUNILENBQUM7SUFFRCxLQUFLLENBQUMsb0JBQW9CLENBQUMsZ0JBQXNDO1FBQy9ELE1BQU0sK0JBQW1CLENBQUMsV0FBVyxDQUFDLEtBQUssV0FBVSxXQUFXO1lBQzlELE1BQU0sQ0FDSixlQUFlLEVBQ2YsaUJBQWlCLEVBQ2pCLFlBQVksRUFDWixlQUFlLEVBQ2Ysb0JBQW9CLEVBQ3JCLEdBQUcsTUFBTSxPQUFPLENBQUMsR0FBRyxDQUFDO2dCQUNwQiwrQkFBYyxDQUFDLG9CQUFvQixDQUFDLGdCQUFnQixFQUFFLCtCQUFtQixFQUFFLFdBQVcsQ0FBQztnQkFDdkYsK0JBQWMsQ0FBQyxvQkFBb0IsQ0FBQyxnQkFBZ0IsQ0FBQyxZQUFZLEVBQUUsV0FBUyxFQUFFLFdBQVcsQ0FBQztnQkFDMUYsK0JBQWMsQ0FBQyxvQkFBb0IsQ0FBQyxnQkFBZ0IsQ0FBQyxPQUFPLEVBQUUsV0FBUyxFQUFFLFdBQVcsQ0FBQztnQkFDckYsK0JBQWMsQ0FBQyxvQkFBb0IsQ0FBQyxnQkFBZ0IsQ0FBQyxVQUFVLEVBQUUsV0FBUyxFQUFFLFdBQVcsQ0FBQztnQkFDeEYsK0JBQWMsQ0FBQyxvQkFBb0IsQ0FBQyxnQkFBZ0IsQ0FBQyxlQUFlLEVBQUUsV0FBUyxFQUFFLFdBQVcsQ0FBQzthQUM5RixDQUFDLENBQUM7WUFDSCxnQkFBZ0IsQ0FBQyxFQUFFLEdBQUcsZUFBZSxDQUFDLEVBQUUsQ0FBQztZQUN6QyxnQkFBZ0IsQ0FBQyxPQUFPLENBQUMsRUFBRSxHQUFHLFlBQVksQ0FBQyxFQUFFLENBQUM7WUFDOUMsZ0JBQWdCLENBQUMsWUFBWSxDQUFDLEVBQUUsR0FBRyxpQkFBaUIsQ0FBQyxFQUFFLENBQUM7WUFDeEQsZ0JBQWdCLENBQUMsVUFBVSxDQUFDLEVBQUUsR0FBRyxlQUFlLENBQUMsRUFBRSxDQUFDO1lBQ3BELGdCQUFnQixDQUFDLGVBQWUsQ0FBQyxFQUFFLEdBQUcsb0JBQW9CLENBQUMsRUFBRSxDQUFDO1FBQ2hFLENBQUMsQ0FBQyxDQUFDO0lBQ0wsQ0FBQztJQUVELEtBQUssQ0FBQyxXQUFXLENBQUMsS0FBWSxFQUFFLElBQVk7UUFDMUMsTUFBTSxLQUFLLEdBQUcsTUFBTSxpQkFBWSxDQUFDLE9BQU8sQ0FBQyxFQUFFLEtBQUssRUFBRSxJQUFJLEVBQUUsQ0FBQyxDQUFDO1FBQzFELElBQUksQ0FBQyxLQUFLO1lBQUUsT0FBTyxJQUFJLENBQUM7UUFDeEIsTUFBTSxNQUFNLEdBQUcsK0JBQWMsQ0FBQyxvQkFBb0IsQ0FBQyxLQUFLLEVBQUUsaUJBQWEsQ0FBQyxDQUFDO1FBQ3pFLE9BQU8sTUFBTSxDQUFDO0lBQ2hCLENBQUM7SUFFRCxLQUFLLENBQUMsa0JBQWtCLENBQUMsU0FBaUIsRUFBRSxPQUFlO1FBQ3pELE1BQU0sZUFBZSxHQUFHLE1BQU0sK0JBQW1CLENBQUMsT0FBTyxDQUFDLEVBQUUsU0FBUyxFQUFFLE9BQU8sRUFBRSxDQUFDLENBQUM7UUFDbEYsSUFBSSxDQUFDLGVBQWU7WUFBRSxPQUFPLElBQUksQ0FBQztRQUNsQyxNQUFNLENBQ0osWUFBWSxFQUNaLGVBQWUsRUFDZixpQkFBaUIsRUFDakIsb0JBQW9CLEVBQ3JCLEdBQUcsTUFBTSxPQUFPLENBQUMsR0FBRyxDQUFDO1lBQ3BCLFdBQVMsQ0FBQyxPQUFPLENBQUMsRUFBRSxNQUFNLEVBQUUsZUFBZSxDQUFDLFNBQVMsRUFBRSxDQUFDO1lBQ3hELFdBQVMsQ0FBQyxPQUFPLENBQUMsRUFBRSxNQUFNLEVBQUUsZUFBZSxDQUFDLFlBQVksRUFBRSxDQUFDO1lBQzNELFdBQVMsQ0FBQyxPQUFPLENBQUMsRUFBRSxNQUFNLEVBQUUsZUFBZSxDQUFDLGNBQWMsRUFBRSxDQUFDO1lBQzdELFdBQVMsQ0FBQyxPQUFPLENBQUMsRUFBRSxNQUFNLEVBQUUsZUFBZSxDQUFDLGlCQUFpQixFQUFFLENBQUM7U0FDakUsQ0FBQyxDQUFDO1FBQ0gsTUFBTSxJQUFJLEdBQUc7WUFDWCxPQUFPLEVBQUUsK0JBQWMsQ0FBQyxvQkFBb0IsQ0FBQyxZQUFhLEVBQUUsV0FBVSxDQUFDO1lBQ3ZFLFVBQVUsRUFBRSwrQkFBYyxDQUFDLG9CQUFvQixDQUFDLGVBQWdCLEVBQUUsV0FBVSxDQUFDO1lBQzdFLFlBQVksRUFBRSwrQkFBYyxDQUFDLG9CQUFvQixDQUFDLGlCQUFrQixFQUFFLFdBQVUsQ0FBQztZQUNqRixlQUFlLEVBQUUsK0JBQWMsQ0FBQyxvQkFBb0IsQ0FBQyxvQkFBcUIsRUFBRSxXQUFVLENBQUM7U0FDeEYsQ0FBQztRQUNGLE1BQU0sZ0JBQWdCLEdBQUcsK0JBQWMsQ0FBQyxvQkFBb0IsQ0FBQyxlQUFlLEVBQUUsK0JBQW9CLEVBQUUsSUFBSSxDQUFDLENBQUM7UUFDMUcsT0FBTyxnQkFBZ0IsQ0FBQztJQUMxQixDQUFDO0lBRUQsS0FBSyxDQUFDLGNBQWMsQ0FBQyxTQUFpQixFQUFFLEdBQVc7UUFDakQsTUFBTSxLQUFLLEdBQUcsTUFBTSx1QkFBZSxDQUFDLE9BQU8sQ0FBQyxFQUFFLFNBQVMsRUFBRSxHQUFHLEVBQUUsQ0FBQyxDQUFDO1FBQ2hFLElBQUksQ0FBQyxLQUFLO1lBQUUsT0FBTyxJQUFJLENBQUM7UUFDeEIsTUFBTSxNQUFNLEdBQUcsK0JBQWMsQ0FBQyxvQkFBb0IsQ0FBQyxLQUFLLEVBQUUsdUJBQWdCLENBQUMsQ0FBQztRQUM1RSxPQUFPLE1BQU0sQ0FBQztJQUNoQixDQUFDO0lBRUQsS0FBSyxDQUFDLGNBQWMsQ0FBQyxnQkFBa0M7UUFDckQsSUFBSSxnQkFBZ0IsQ0FBQyxFQUFFLEVBQUU7WUFDdkIsTUFBTSxlQUFlLEdBQUcsTUFBTSx1QkFBZSxDQUFDLE9BQU8sQ0FBQyxFQUFFLEVBQUUsRUFBRSxnQkFBZ0IsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDO1lBQ25GLElBQUksQ0FBQyxlQUFlO2dCQUFFLE9BQU87WUFDN0IsZUFBZSxDQUFDLE9BQU8sR0FBRyxnQkFBZ0IsQ0FBQyxPQUFPLENBQUM7WUFDbkQsZUFBZSxDQUFDLFdBQVcsR0FBRyxnQkFBZ0IsQ0FBQyxXQUFXLENBQUM7WUFDM0QsTUFBTSxlQUFlLENBQUMsSUFBSSxFQUFFLENBQUM7U0FDOUI7YUFBTTtZQUNMLE1BQU0sK0JBQWMsQ0FBQyxvQkFBb0IsQ0FBQyxnQkFBZ0IsRUFBRSx1QkFBZSxDQUFDLENBQUM7U0FDOUU7SUFDSCxDQUFDO0NBQ0YsQ0FBQTtBQTFGWSxpQkFBaUI7SUFIN0IsSUFBQSxtQkFBWSxFQUFDO1FBQ1osV0FBVyxFQUFFLGtCQUFXLENBQUMsTUFBTTtLQUNoQyxDQUFDO0dBQ1csaUJBQWlCLENBMEY3QjtBQTFGWSw4Q0FBaUIifQ==
|
|
294
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiUGFja2FnZVJlcG9zaXRvcnkuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9hcHAvcmVwb3NpdG9yeS9QYWNrYWdlUmVwb3NpdG9yeS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7QUFBQSxzQ0FBd0Q7QUFDeEQsNkNBQTBEO0FBQzFELG9EQUFrRTtBQUNsRSwwREFBdUQ7QUFDdkQsa0VBQXVGO0FBQ3ZGLDJEQUErRTtBQUUvRSwyRUFBdUc7QUFDdkcsdUNBQWlEO0FBQ2pELDhDQUF5RDtBQUN6RCwwREFBMkU7QUFDM0UsbURBQW1FO0FBQ25FLG1EQUFtRTtBQUNuRSx1Q0FBaUQ7QUFDakQsOENBQXlEO0FBQ3pELDZEQUEwRDtBQUsxRCxJQUFhLGlCQUFpQixHQUE5QixNQUFhLGlCQUFrQixTQUFRLHVDQUFrQjtJQUN2RCxLQUFLLENBQUMsV0FBVyxDQUFDLEtBQWEsRUFBRSxJQUFZO1FBQzNDLE1BQU0sS0FBSyxHQUFHLE1BQU0saUJBQVksQ0FBQyxPQUFPLENBQUMsRUFBRSxLQUFLLEVBQUUsSUFBSSxFQUFFLENBQUMsQ0FBQztRQUMxRCxJQUFJLENBQUMsS0FBSztZQUFFLE9BQU8sSUFBSSxDQUFDO1FBQ3hCLE1BQU0sa0JBQWtCLEdBQUcsS0FBSyxDQUFDLGVBQWUsQ0FBQyxDQUFDLENBQUMsTUFBTSxXQUFTLENBQUMsT0FBTyxDQUFDLEVBQUUsTUFBTSxFQUFFLEtBQUssQ0FBQyxlQUFlLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUM7UUFDckgsTUFBTSxxQkFBcUIsR0FBRyxLQUFLLENBQUMsa0JBQWtCLENBQUMsQ0FBQyxDQUFDLE1BQU0sV0FBUyxDQUFDLE9BQU8sQ0FBQyxFQUFFLE1BQU0sRUFBRSxLQUFLLENBQUMsa0JBQWtCLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUM7UUFDOUgsTUFBTSxJQUFJLEdBQUc7WUFDWCxhQUFhLEVBQUUsa0JBQWtCLElBQUksK0JBQWMsQ0FBQyxvQkFBb0IsQ0FBQyxrQkFBa0IsRUFBRSxXQUFVLENBQUM7WUFDeEcsZ0JBQWdCLEVBQUUscUJBQXFCLElBQUksK0JBQWMsQ0FBQyxvQkFBb0IsQ0FBQyxxQkFBcUIsRUFBRSxXQUFVLENBQUM7U0FDbEgsQ0FBQztRQUNGLE1BQU0sTUFBTSxHQUFHLCtCQUFjLENBQUMsb0JBQW9CLENBQUMsS0FBSyxFQUFFLGlCQUFhLEVBQUUsSUFBSSxDQUFDLENBQUM7UUFDL0UsT0FBTyxNQUFNLENBQUM7SUFDaEIsQ0FBQztJQUVELEtBQUssQ0FBQyxhQUFhLENBQUMsS0FBYSxFQUFFLElBQVk7UUFDN0MsTUFBTSxLQUFLLEdBQUcsTUFBTSxpQkFBWSxDQUFDLE9BQU8sQ0FBQyxFQUFFLEtBQUssRUFBRSxJQUFJLEVBQUUsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxXQUFXLENBQUMsQ0FBQztRQUM5RSxJQUFJLENBQUMsS0FBSztZQUFFLE9BQU8sSUFBSSxDQUFDO1FBQ3hCLE9BQU8sS0FBSyxDQUFDLFNBQVMsQ0FBQztJQUN6QixDQUFDO0lBRUQsS0FBSyxDQUFDLFdBQVcsQ0FBQyxTQUF3QjtRQUN4QyxJQUFJLFNBQVMsQ0FBQyxFQUFFLEVBQUU7WUFDaEIsTUFBTSxLQUFLLEdBQUcsTUFBTSxpQkFBWSxDQUFDLE9BQU8sQ0FBQyxFQUFFLEVBQUUsRUFBRSxTQUFTLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FBQztZQUMvRCxJQUFJLENBQUMsS0FBSztnQkFBRSxPQUFPO1lBQ25CLE1BQU0sK0JBQWMsQ0FBQyxpQkFBaUIsQ0FBQyxTQUFTLEVBQUUsS0FBSyxDQUFDLENBQUM7U0FDMUQ7YUFBTTtZQUNMLE1BQU0sS0FBSyxHQUFHLE1BQU0sK0JBQWMsQ0FBQyxvQkFBb0IsQ0FBQyxTQUFTLEVBQUUsaUJBQVksQ0FBQyxDQUFDO1lBQ2pGLElBQUksQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLDJEQUEyRCxFQUFFLEtBQUssQ0FBQyxFQUFFLEVBQUUsS0FBSyxDQUFDLFNBQVMsQ0FBQyxDQUFDO1NBQzFHO0lBQ0gsQ0FBQztJQUVELEtBQUssQ0FBQyxlQUFlLENBQUMsU0FBd0IsRUFBRSxlQUF3QjtRQUN0RSxNQUFNLElBQUksR0FBRyxlQUFlLENBQUMsQ0FBQyxDQUFDLFNBQVMsQ0FBQyxhQUFhLENBQUMsQ0FBQyxDQUFDLFNBQVMsQ0FBQyxnQkFBZ0IsQ0FBQztRQUNwRixJQUFJLENBQUMsSUFBSTtZQUFFLE9BQU87UUFDbEIsSUFBSSxJQUFJLENBQUMsRUFBRSxFQUFFO1lBQ1gsTUFBTSxLQUFLLEdBQUcsTUFBTSxXQUFTLENBQUMsT0FBTyxDQUFDLEVBQUUsRUFBRSxFQUFFLElBQUksQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDO1lBQ3ZELElBQUksQ0FBQyxLQUFLO2dCQUFFLE9BQU87WUFDbkIsTUFBTSwrQkFBYyxDQUFDLGlCQUFpQixDQUFDLElBQUksRUFBRSxLQUFLLENBQUMsQ0FBQztTQUNyRDthQUFNO1lBQ0wsTUFBTSxLQUFLLEdBQUcsTUFBTSwrQkFBYyxDQUFDLG9CQUFvQixDQUFDLElBQUksRUFBRSxXQUFTLENBQUMsQ0FBQztZQUN6RSxJQUFJLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQywyRUFBMkUsRUFDMUYsS0FBSyxDQUFDLEVBQUUsRUFBRSxLQUFLLENBQUMsTUFBTSxFQUFFLFNBQVMsQ0FBQyxTQUFTLENBQUMsQ0FBQztTQUNoRDtRQUNELE1BQU0sSUFBSSxDQUFDLFdBQVcsQ0FBQyxTQUFTLENBQUMsQ0FBQztJQUNwQyxDQUFDO0lBRUQsS0FBSyxDQUFDLGlCQUFpQixDQUFDLFNBQXdCLEVBQUUsZUFBd0I7UUFDeEUsTUFBTSxJQUFJLEdBQUcsZUFBZSxDQUFDLENBQUMsQ0FBQyxTQUFTLENBQUMsYUFBYSxDQUFDLENBQUMsQ0FBQyxTQUFTLENBQUMsZ0JBQWdCLENBQUM7UUFDcEYsSUFBSSxDQUFDLElBQUk7WUFBRSxPQUFPO1FBQ2xCLE1BQU0sS0FBSyxHQUFHLE1BQU0sV0FBUyxDQUFDLE9BQU8sQ0FBQyxFQUFFLEVBQUUsRUFBRSxJQUFJLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FBQztRQUN2RCxJQUFJLENBQUMsS0FBSztZQUFFLE9BQU87UUFDbkIsTUFBTSxLQUFLLENBQUMsTUFBTSxFQUFFLENBQUM7UUFDckIsSUFBSSxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsZ0ZBQWdGLEVBQy9GLEtBQUssQ0FBQyxFQUFFLEVBQUUsS0FBSyxDQUFDLE1BQU0sRUFBRSxTQUFTLENBQUMsU0FBUyxDQUFDLENBQUM7UUFDL0MsT0FBTyxDQUFDLEdBQUcsQ0FBQyxJQUFJLEVBQUUsUUFBUSxFQUFFLElBQUksQ0FBQyxDQUFDO1FBQ2xDLE1BQU0sSUFBSSxDQUFDLFdBQVcsQ0FBQyxTQUFTLENBQUMsQ0FBQztJQUNwQyxDQUFDO0lBRUQsc0JBQXNCO0lBQ3RCLHdDQUF3QztJQUN4QyxLQUFLLENBQUMscUJBQXFCLENBQUMsU0FBaUIsRUFBRSxNQUFjO1FBQzNELElBQUksS0FBSyxHQUFHLE1BQU0sdUJBQWUsQ0FBQyxPQUFPLENBQUMsRUFBRSxTQUFTLEVBQUUsTUFBTSxFQUFFLENBQUMsQ0FBQztRQUNqRSxJQUFJLENBQUMsS0FBSyxFQUFFO1lBQ1YsS0FBSyxHQUFHLE1BQU0sdUJBQWUsQ0FBQyxNQUFNLENBQUMsRUFBRSxTQUFTLEVBQUUsTUFBTSxFQUFFLENBQUMsQ0FBQztZQUM1RCxJQUFJLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxnRkFBZ0YsRUFDL0YsS0FBSyxDQUFDLEVBQUUsRUFBRSxLQUFLLENBQUMsU0FBUyxFQUFFLEtBQUssQ0FBQyxNQUFNLENBQUMsQ0FBQztZQUMzQyxPQUFPLElBQUksQ0FBQztTQUNiO0lBQ0gsQ0FBQztJQUVELEtBQUssQ0FBQyxzQkFBc0IsQ0FBQyxTQUFpQjtRQUM1QyxNQUFNLE1BQU0sR0FBRyxNQUFNLHVCQUFlLENBQUMsSUFBSSxDQUFDLEVBQUUsU0FBUyxFQUFFLENBQUMsQ0FBQztRQUN6RCxNQUFNLFVBQVUsR0FBRyxNQUFNLFdBQVMsQ0FBQyxJQUFJLENBQUMsRUFBRSxNQUFNLEVBQUUsTUFBTSxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxNQUFNLENBQUMsRUFBRSxDQUFDLENBQUM7UUFDL0UsT0FBTyxVQUFVLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsK0JBQWMsQ0FBQyxvQkFBb0IsQ0FBQyxJQUFJLEVBQUUsV0FBVSxDQUFDLENBQUMsQ0FBQztJQUN2RixDQUFDO0lBRUQsS0FBSyxDQUFDLHlCQUF5QixDQUFDLFNBQWlCLEVBQUUsT0FBaUI7UUFDbEUsTUFBTSx1QkFBZSxDQUFDLFdBQVcsQ0FBQyxLQUFLLElBQUksRUFBRTtZQUMzQyxnQkFBZ0I7WUFDaEIsMEZBQTBGO1lBQzFGLE1BQU0sV0FBVyxHQUFHLE1BQU0sdUJBQWUsQ0FBQyxNQUFNLENBQUMsRUFBRSxTQUFTLEVBQUUsQ0FBQyxDQUFDO1lBQ2hFLElBQUksQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLDZFQUE2RSxFQUM1RixXQUFXLEVBQUUsU0FBUyxDQUFDLENBQUM7WUFDMUIsV0FBVztZQUNYLEtBQUssTUFBTSxNQUFNLElBQUksT0FBTyxFQUFFO2dCQUM1QixrRkFBa0Y7Z0JBQ2xGLE1BQU0sS0FBSyxHQUFHLE1BQU0sdUJBQWUsQ0FBQyxNQUFNLENBQUMsRUFBRSxTQUFTLEVBQUUsTUFBTSxFQUFFLENBQUMsQ0FBQztnQkFDbEUsSUFBSSxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMscUZBQXFGLEVBQ3BHLEtBQUssQ0FBQyxFQUFFLEVBQUUsS0FBSyxDQUFDLFNBQVMsRUFBRSxLQUFLLENBQUMsTUFBTSxDQUFDLENBQUM7YUFDNUM7UUFDSCxDQUFDLENBQUMsQ0FBQztJQUNMLENBQUM7SUFFRCxLQUFLLENBQUMsdUJBQXVCLENBQUMsU0FBaUIsRUFBRSxNQUFjO1FBQzdELE1BQU0sS0FBSyxHQUFHLE1BQU0sdUJBQWUsQ0FBQyxPQUFPLENBQUMsRUFBRSxTQUFTLEVBQUUsTUFBTSxFQUFFLENBQUMsQ0FBQztRQUNuRSxJQUFJLEtBQUssRUFBRTtZQUNULE1BQU0sS0FBSyxDQUFDLE1BQU0sRUFBRSxDQUFDO1lBQ3JCLElBQUksQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLHNGQUFzRixFQUNyRyxLQUFLLENBQUMsRUFBRSxFQUFFLEtBQUssQ0FBQyxTQUFTLEVBQUUsS0FBSyxDQUFDLE1BQU0sQ0FBQyxDQUFDO1lBQzNDLE9BQU8sSUFBSSxDQUFDO1NBQ2I7UUFDRCxPQUFPLEtBQUssQ0FBQztJQUNmLENBQUM7SUFFRCx1QkFBdUI7SUFDdkIsS0FBSyxDQUFDLG9CQUFvQixDQUFDLE1BQWM7UUFDdkMsTUFBTSxNQUFNLEdBQUcsTUFBTSx1QkFBZSxDQUFDLElBQUksQ0FBQyxFQUFFLE1BQU0sRUFBRSxDQUFDLENBQUM7UUFDdEQsTUFBTSxhQUFhLEdBQUcsTUFBTSxpQkFBWSxDQUFDLElBQUksQ0FBQyxFQUFFLFNBQVMsRUFBRSxNQUFNLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLFNBQVMsQ0FBQyxFQUFFLENBQUMsQ0FBQztRQUMzRixPQUFPLGFBQWEsQ0FBQyxHQUFHLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQywrQkFBYyxDQUFDLG9CQUFvQixDQUFDLEdBQUcsRUFBRSxpQkFBYSxDQUFDLENBQUMsQ0FBQztJQUMzRixDQUFDO0lBRUQsS0FBSyxDQUFDLG9CQUFvQixDQUFDLGdCQUFzQztRQUMvRCxNQUFNLCtCQUFtQixDQUFDLFdBQVcsQ0FBQyxLQUFLLFdBQVUsV0FBVztZQUM5RCxNQUFNLE9BQU8sQ0FBQyxHQUFHLENBQUM7Z0JBQ2hCLHdDQUF3QztnQkFDeEMsK0JBQWMsQ0FBQyxvQkFBb0IsQ0FBQyxnQkFBZ0IsRUFBRSwrQkFBbUIsRUFBRSxXQUFXLENBQUM7Z0JBQ3ZGLCtCQUFjLENBQUMsb0JBQW9CLENBQUMsZ0JBQWdCLENBQUMsWUFBWSxFQUFFLFdBQVMsRUFBRSxXQUFXLENBQUM7Z0JBQzFGLCtCQUFjLENBQUMsb0JBQW9CLENBQUMsZ0JBQWdCLENBQUMsT0FBTyxFQUFFLFdBQVMsRUFBRSxXQUFXLENBQUM7Z0JBQ3JGLCtCQUFjLENBQUMsb0JBQW9CLENBQUMsZ0JBQWdCLENBQUMsVUFBVSxFQUFFLFdBQVMsRUFBRSxXQUFXLENBQUM7Z0JBQ3hGLCtCQUFjLENBQUMsb0JBQW9CLENBQUMsZ0JBQWdCLENBQUMsZUFBZSxFQUFFLFdBQVMsRUFBRSxXQUFXLENBQUM7YUFDOUYsQ0FBQyxDQUFDO1FBQ0wsQ0FBQyxDQUFDLENBQUM7SUFDTCxDQUFDO0lBRUQsS0FBSyxDQUFDLGtCQUFrQixDQUFDLGdCQUFzQztRQUM3RCxtRkFBbUY7UUFDbkYsSUFBSSxLQUFLLEdBQUcsTUFBTSxXQUFTLENBQUMsT0FBTyxDQUFDLEVBQUUsRUFBRSxFQUFFLGdCQUFnQixDQUFDLFlBQVksQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDO1FBQzlFLElBQUksS0FBSyxFQUFFO1lBQ1QsTUFBTSwrQkFBYyxDQUFDLGlCQUFpQixDQUFDLGdCQUFnQixDQUFDLFlBQVksRUFBRSxLQUFLLENBQUMsQ0FBQztTQUM5RTtRQUNELEtBQUssR0FBRyxNQUFNLFdBQVMsQ0FBQyxPQUFPLENBQUMsRUFBRSxFQUFFLEVBQUUsZ0JBQWdCLENBQUMsZUFBZSxDQUFDLEVBQUUsRUFBRSxDQUFDLENBQUM7UUFDN0UsSUFBSSxLQUFLLEVBQUU7WUFDVCxNQUFNLCtCQUFjLENBQUMsaUJBQWlCLENBQUMsZ0JBQWdCLENBQUMsZUFBZSxFQUFFLEtBQUssQ0FBQyxDQUFDO1NBQ2pGO1FBQ0QsSUFBSSxnQkFBZ0IsQ0FBQyxFQUFFLEVBQUU7WUFDdkIsTUFBTSxLQUFLLEdBQUcsTUFBTSwrQkFBbUIsQ0FBQyxPQUFPLENBQUMsRUFBRSxFQUFFLEVBQUUsZ0JBQWdCLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FBQztZQUM3RSxJQUFJLEtBQUssRUFBRTtnQkFDVCxNQUFNLCtCQUFjLENBQUMsaUJBQWlCLENBQUMsZ0JBQWdCLEVBQUUsS0FBSyxDQUFDLENBQUM7YUFDakU7U0FDRjtJQUNILENBQUM7SUFFRCxLQUFLLENBQUMsa0JBQWtCLENBQUMsU0FBaUIsRUFBRSxPQUFlO1FBQ3pELE1BQU0sZUFBZSxHQUFHLE1BQU0sK0JBQW1CLENBQUMsT0FBTyxDQUFDLEVBQUUsU0FBUyxFQUFFLE9BQU8sRUFBRSxDQUFDLENBQUM7UUFDbEYsSUFBSSxDQUFDLGVBQWU7WUFBRSxPQUFPLElBQUksQ0FBQztRQUNsQyxPQUFPLE1BQU0sSUFBSSxDQUFDLDZCQUE2QixDQUFDLGVBQWUsQ0FBQyxDQUFDO0lBQ25FLENBQUM7SUFFRCxLQUFLLENBQUMsbUJBQW1CLENBQUMsU0FBaUI7UUFDekMscURBQXFEO1FBQ3JELE1BQU0sTUFBTSxHQUFHLE1BQU0sK0JBQW1CLENBQUMsSUFBSSxDQUFDLEVBQUUsU0FBUyxFQUFFLENBQUMsQ0FBQyxLQUFLLENBQUMsU0FBUyxDQUFDLENBQUM7UUFDOUUsTUFBTSxRQUFRLEdBQTJCLEVBQUUsQ0FBQztRQUM1QyxLQUFLLE1BQU0sS0FBSyxJQUFJLE1BQU0sRUFBRTtZQUMxQixRQUFRLENBQUMsSUFBSSxDQUFDLE1BQU0sSUFBSSxDQUFDLDZCQUE2QixDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUM7U0FDaEU7UUFDRCxPQUFPLFFBQVEsQ0FBQztJQUNsQixDQUFDO0lBRUQsS0FBSyxDQUFDLHVCQUF1QixDQUFDLFNBQWlCO1FBQzdDLE1BQU0sSUFBSSxHQUFHLE1BQU0sK0JBQW1CLENBQUMsSUFBSSxDQUFDLEVBQUUsU0FBUyxFQUFFLENBQUMsQ0FBQyxNQUFNLENBQUMsU0FBUyxDQUFDLENBQUMsS0FBSyxDQUFDLFNBQVMsQ0FBQyxDQUFDO1FBQzlGLE9BQU8sSUFBSSxDQUFDLEdBQUcsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLEdBQUcsQ0FBQyxPQUFPLENBQUMsQ0FBQztJQUN0QyxDQUFDO0lBRUQsd0JBQXdCO0lBQ3hCLEtBQUssQ0FBQyxxQkFBcUIsQ0FBQyxTQUFpQjtRQUMzQyxNQUFNLFdBQVcsR0FBRyxNQUFNLCtCQUFtQixDQUFDLE1BQU0sQ0FBQyxFQUFFLFNBQVMsRUFBRSxDQUFDLENBQUM7UUFDcEUsSUFBSSxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMseUVBQXlFLEVBQ3hGLFdBQVcsRUFBRSxTQUFTLENBQUMsQ0FBQztJQUM1QixDQUFDO0lBRUQsS0FBSyxDQUFDLG9CQUFvQixDQUFDLFVBQWdDO1FBQ3pELE1BQU0sZUFBZSxHQUFHLE1BQU0sV0FBUyxDQUFDLE1BQU0sQ0FBQztZQUM3QyxNQUFNLEVBQUU7Z0JBQ04sVUFBVSxDQUFDLGVBQWUsQ0FBQyxNQUFNO2dCQUNqQyxVQUFVLENBQUMsWUFBWSxDQUFDLE1BQU07Z0JBQzlCLFVBQVUsQ0FBQyxVQUFVLENBQUMsTUFBTTtnQkFDNUIsVUFBVSxDQUFDLE9BQU8sQ0FBQyxNQUFNO2FBQzFCO1NBQ0YsQ0FBQyxDQUFDO1FBQ0gsTUFBTSxXQUFXLEdBQUcsTUFBTSwrQkFBbUIsQ0FBQyxNQUFNLENBQUMsRUFBRSxnQkFBZ0IsRUFBRSxVQUFVLENBQUMsZ0JBQWdCLEVBQUUsQ0FBQyxDQUFDO1FBQ3hHLElBQUksQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLDZGQUE2RixFQUM1RyxlQUFlLEVBQUUsV0FBVyxFQUFFLFVBQVUsQ0FBQyxnQkFBZ0IsQ0FBQyxDQUFDO0lBQy9ELENBQUM7SUFFRCxLQUFLLENBQUMsMEJBQTBCLENBQUMsY0FBNEM7UUFDM0UsSUFBSSxLQUFLLEdBQUcsTUFBTSwrQ0FBMkIsQ0FBQyxPQUFPLENBQUMsRUFBRSxnQkFBZ0IsRUFBRSxjQUFjLENBQUMsZ0JBQWdCLEVBQUUsQ0FBQyxDQUFDO1FBQzdHLElBQUksS0FBSyxFQUFFO1lBQ1QsS0FBSyxDQUFDLFFBQVEsR0FBRyxjQUFjLENBQUMsUUFBUSxDQUFDO1lBQ3pDLE1BQU0sS0FBSyxDQUFDLElBQUksRUFBRSxDQUFDO1NBQ3BCO2FBQU07WUFDTCxLQUFLLEdBQUcsTUFBTSwrQkFBYyxDQUFDLG9CQUFvQixDQUFDLGNBQWMsRUFBRSwrQ0FBMkIsQ0FBQyxDQUFDO1lBQy9GLElBQUksQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLGlGQUFpRixFQUNoRyxLQUFLLENBQUMsRUFBRSxFQUFFLEtBQUssQ0FBQyxnQkFBZ0IsQ0FBQyxDQUFDO1NBQ3JDO0lBQ0gsQ0FBQztJQUVELEtBQUssQ0FBQywwQkFBMEIsQ0FBQyxnQkFBd0I7UUFDdkQsTUFBTSxLQUFLLEdBQUcsTUFBTSwrQ0FBMkIsQ0FBQyxPQUFPLENBQUMsRUFBRSxnQkFBZ0IsRUFBRSxDQUFDLENBQUM7UUFDOUUsSUFBSSxDQUFDLEtBQUs7WUFBRSxPQUFPLElBQUksQ0FBQztRQUN4QixPQUFPLCtCQUFjLENBQUMsb0JBQW9CLENBQUMsS0FBSyxFQUFFLCtDQUEyQixDQUFDLENBQUM7SUFDakYsQ0FBQztJQUVNLEtBQUssQ0FBQyxVQUFVO1FBQ3JCLE1BQU0sT0FBTyxHQUFHLE1BQU0saUJBQVksQ0FBQyxPQUFPLEVBQUUsQ0FBQyxLQUFLLENBQUMsSUFBSSxFQUFFLE1BQU0sQ0FBQyxDQUFDO1FBQ2pFLE1BQU0sV0FBVyxHQUFHLE1BQU0sK0JBQW1CLENBQUMsT0FBTyxFQUFFLENBQUMsS0FBSyxDQUFDLElBQUksRUFBRSxNQUFNLENBQUMsQ0FBQztRQUM1RSxJQUFJLFlBQVksR0FBRyxDQUFDLENBQUM7UUFDckIsSUFBSSxtQkFBbUIsR0FBRyxDQUFDLENBQUM7UUFDNUIsSUFBSSxXQUFXLEdBQUcsRUFBRSxDQUFDO1FBQ3JCLElBQUksa0JBQWtCLEdBQUcsRUFBRSxDQUFDO1FBRTVCLElBQUksT0FBTyxFQUFFO1lBQ1gsV0FBVyxHQUFHLE9BQU8sQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLEdBQUcsT0FBTyxDQUFDLEtBQUssSUFBSSxPQUFPLENBQUMsSUFBSSxFQUFFLENBQUMsQ0FBQyxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUM7WUFDaEYsd0NBQXdDO1lBQ3hDLFlBQVksR0FBRyxNQUFNLENBQUMsT0FBTyxDQUFDLEVBQUUsQ0FBQyxDQUFDO1NBQ25DO1FBRUQsSUFBSSxXQUFXLEVBQUU7WUFDZixNQUFNLEdBQUcsR0FBRyxNQUFNLGlCQUFZLENBQUMsT0FBTyxDQUFDLEVBQUUsU0FBUyxFQUFFLFdBQVcsQ0FBQyxTQUFTLEVBQUUsQ0FBQyxDQUFDO1lBQzdFLElBQUksR0FBRyxFQUFFO2dCQUNQLE1BQU0sUUFBUSxHQUFHLEdBQUcsQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLEdBQUcsR0FBRyxDQUFDLEtBQUssSUFBSSxHQUFHLENBQUMsSUFBSSxFQUFFLENBQUMsQ0FBQyxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUM7Z0JBQ25FLGtCQUFrQixHQUFHLEdBQUcsUUFBUSxJQUFJLFdBQVcsQ0FBQyxPQUFPLEVBQUUsQ0FBQzthQUMzRDtZQUNELG1CQUFtQixHQUFHLE1BQU0sQ0FBQyxXQUFXLENBQUMsRUFBRSxDQUFDLENBQUM7U0FDOUM7UUFDRCxPQUFPO1lBQ0wsWUFBWTtZQUNaLG1CQUFtQjtZQUNuQixXQUFXO1lBQ1gsa0JBQWtCO1NBQ25CLENBQUM7SUFDSixDQUFDO0lBRU8sS0FBSyxDQUFDLDZCQUE2QixDQUFDLEtBQTBCO1FBQ3BFLE1BQU0sQ0FDSixZQUFZLEVBQ1osZUFBZSxFQUNmLGlCQUFpQixFQUNqQixvQkFBb0IsRUFDckIsR0FBRyxNQUFNLE9BQU8sQ0FBQyxHQUFHLENBQUM7WUFDcEIsV0FBUyxDQUFDLE9BQU8sQ0FBQyxFQUFFLE1BQU0sRUFBRSxLQUFLLENBQUMsU0FBUyxFQUFFLENBQUM7WUFDOUMsV0FBUyxDQUFDLE9BQU8sQ0FBQyxFQUFFLE1BQU0sRUFBRSxLQUFLLENBQUMsWUFBWSxFQUFFLENBQUM7WUFDakQsV0FBUyxDQUFDLE9BQU8sQ0FBQyxFQUFFLE1BQU0sRUFBRSxLQUFLLENBQUMsY0FBYyxFQUFFLENBQUM7WUFDbkQsV0FBUyxDQUFDLE9BQU8sQ0FBQyxFQUFFLE1BQU0sRUFBRSxLQUFLLENBQUMsaUJBQWlCLEVBQUUsQ0FBQztTQUN2RCxDQUFDLENBQUM7UUFDSCxNQUFNLElBQUksR0FBRztZQUNYLE9BQU8sRUFBRSxZQUFZLElBQUksK0JBQWMsQ0FBQyxvQkFBb0IsQ0FBQyxZQUFZLEVBQUUsV0FBVSxDQUFDO1lBQ3RGLFVBQVUsRUFBRSxlQUFlLElBQUksK0JBQWMsQ0FBQyxvQkFBb0IsQ0FBQyxlQUFlLEVBQUUsV0FBVSxDQUFDO1lBQy9GLFlBQVksRUFBRSxpQkFBaUIsSUFBSSwrQkFBYyxDQUFDLG9CQUFvQixDQUFDLGlCQUFpQixFQUFFLFdBQVUsQ0FBQztZQUNyRyxlQUFlLEVBQUUsb0JBQW9CLElBQUksK0JBQWMsQ0FBQyxvQkFBb0IsQ0FBQyxvQkFBb0IsRUFBRSxXQUFVLENBQUM7U0FDL0csQ0FBQztRQUNGLE9BQU8sK0JBQWMsQ0FBQyxvQkFBb0IsQ0FBQyxLQUFLLEVBQUUsK0JBQW9CLEVBQUUsSUFBSSxDQUFDLENBQUM7SUFDaEYsQ0FBQztJQUVELEtBQUssQ0FBQyxjQUFjLENBQUMsU0FBaUIsRUFBRSxHQUFXO1FBQ2pELE1BQU0sS0FBSyxHQUFHLE1BQU0sdUJBQWUsQ0FBQyxPQUFPLENBQUMsRUFBRSxTQUFTLEVBQUUsR0FBRyxFQUFFLENBQUMsQ0FBQztRQUNoRSxJQUFJLENBQUMsS0FBSztZQUFFLE9BQU8sSUFBSSxDQUFDO1FBQ3hCLE1BQU0sTUFBTSxHQUFHLCtCQUFjLENBQUMsb0JBQW9CLENBQUMsS0FBSyxFQUFFLHVCQUFnQixDQUFDLENBQUM7UUFDNUUsT0FBTyxNQUFNLENBQUM7SUFDaEIsQ0FBQztJQUVELEtBQUssQ0FBQyxjQUFjLENBQUMsZ0JBQWtDO1FBQ3JELElBQUksZ0JBQWdCLENBQUMsRUFBRSxFQUFFO1lBQ3ZCLE1BQU0sS0FBSyxHQUFHLE1BQU0sdUJBQWUsQ0FBQyxPQUFPLENBQUMsRUFBRSxFQUFFLEVBQUUsZ0JBQWdCLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FBQztZQUN6RSxJQUFJLENBQUMsS0FBSztnQkFBRSxPQUFPO1lBQ25CLE1BQU0sK0JBQWMsQ0FBQyxpQkFBaUIsQ0FBQyxnQkFBZ0IsRUFBRSxLQUFLLENBQUMsQ0FBQztTQUNqRTthQUFNO1lBQ0wsTUFBTSxLQUFLLEdBQUcsTUFBTSwrQkFBYyxDQUFDLG9CQUFvQixDQUFDLGdCQUFnQixFQUFFLHVCQUFlLENBQUMsQ0FBQztZQUMzRixJQUFJLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxpRkFBaUYsRUFDaEcsS0FBSyxDQUFDLEVBQUUsRUFBRSxLQUFLLENBQUMsWUFBWSxFQUFFLEtBQUssQ0FBQyxHQUFHLEVBQUUsS0FBSyxDQUFDLE9BQU8sQ0FBQyxDQUFDO1NBQzNEO0lBQ0gsQ0FBQztJQUVELEtBQUssQ0FBQyxnQkFBZ0IsQ0FBQyxnQkFBa0M7UUFDdkQsTUFBTSxLQUFLLEdBQUcsTUFBTSx1QkFBZSxDQUFDLE9BQU8sQ0FBQyxFQUFFLEVBQUUsRUFBRSxnQkFBZ0IsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDO1FBQ3pFLElBQUksQ0FBQyxLQUFLO1lBQUUsT0FBTztRQUNuQixNQUFNLEtBQUssQ0FBQyxNQUFNLEVBQUUsQ0FBQztRQUNyQixJQUFJLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxxRkFBcUYsRUFDcEcsS0FBSyxDQUFDLEVBQUUsRUFBRSxLQUFLLENBQUMsWUFBWSxFQUFFLEtBQUssQ0FBQyxTQUFTLENBQUMsQ0FBQztJQUNuRCxDQUFDO0lBRUQsS0FBSyxDQUFDLGVBQWUsQ0FBQyxTQUFpQjtRQUNyQyxNQUFNLE1BQU0sR0FBRyxNQUFNLHVCQUFlLENBQUMsSUFBSSxDQUFDLEVBQUUsU0FBUyxFQUFFLENBQUMsQ0FBQztRQUN6RCxNQUFNLFFBQVEsR0FBdUIsRUFBRSxDQUFDO1FBQ3hDLEtBQUssTUFBTSxLQUFLLElBQUksTUFBTSxFQUFFO1lBQzFCLFFBQVEsQ0FBQyxJQUFJLENBQUMsK0JBQWMsQ0FBQyxvQkFBb0IsQ0FBQyxLQUFLLEVBQUUsdUJBQWdCLENBQUMsQ0FBQyxDQUFDO1NBQzdFO1FBQ0QsT0FBTyxRQUFRLENBQUM7SUFDbEIsQ0FBQztDQUNGLENBQUE7QUFoU1ksaUJBQWlCO0lBSDdCLElBQUEsbUJBQVksRUFBQztRQUNaLFdBQVcsRUFBRSxrQkFBVyxDQUFDLE1BQU07S0FDaEMsQ0FBQztHQUNXLGlCQUFpQixDQWdTN0I7QUFoU1ksOENBQWlCIn0=
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import { PackageVersionBlock as PackageVersionBlockModel } from './model/PackageVersionBlock';
|
|
2
|
+
import { PackageVersionBlock as PackageVersionBlockEntity } from '../core/entity/PackageVersionBlock';
|
|
3
|
+
import { AbstractRepository } from './AbstractRepository';
|
|
4
|
+
export declare class PackageVersionBlockRepository extends AbstractRepository {
|
|
5
|
+
savePackageVersionBlock(block: PackageVersionBlockEntity): Promise<void>;
|
|
6
|
+
findPackageBlock(packageId: string): Promise<PackageVersionBlockEntity | null>;
|
|
7
|
+
findPackageVersionBlock(packageId: string, version: string): Promise<PackageVersionBlockEntity | null>;
|
|
8
|
+
listPackageVersionBlocks(packageId: string): Promise<import("leoric").Collection<PackageVersionBlockModel>>;
|
|
9
|
+
removePackageVersionBlock(packageVersionBlockId: string): Promise<void>;
|
|
10
|
+
}
|
|
@@ -0,0 +1,51 @@
|
|
|
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
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
9
|
+
exports.PackageVersionBlockRepository = void 0;
|
|
10
|
+
const tegg_1 = require("@eggjs/tegg");
|
|
11
|
+
const ModelConvertor_1 = require("./util/ModelConvertor");
|
|
12
|
+
const PackageVersionBlock_1 = require("./model/PackageVersionBlock");
|
|
13
|
+
const PackageVersionBlock_2 = require("../core/entity/PackageVersionBlock");
|
|
14
|
+
const AbstractRepository_1 = require("./AbstractRepository");
|
|
15
|
+
let PackageVersionBlockRepository = class PackageVersionBlockRepository extends AbstractRepository_1.AbstractRepository {
|
|
16
|
+
async savePackageVersionBlock(block) {
|
|
17
|
+
if (block.id) {
|
|
18
|
+
const model = await PackageVersionBlock_1.PackageVersionBlock.findOne({ id: block.id });
|
|
19
|
+
if (!model)
|
|
20
|
+
return;
|
|
21
|
+
await ModelConvertor_1.ModelConvertor.saveEntityToModel(block, model);
|
|
22
|
+
}
|
|
23
|
+
else {
|
|
24
|
+
const model = await ModelConvertor_1.ModelConvertor.convertEntityToModel(block, PackageVersionBlock_1.PackageVersionBlock);
|
|
25
|
+
this.logger.info('[PackageVersionBlockRepository:savePackageVersionBlock:new] id: %s, packageVersionBlockId: %s', model.id, model.packageVersionBlockId);
|
|
26
|
+
}
|
|
27
|
+
}
|
|
28
|
+
async findPackageBlock(packageId) {
|
|
29
|
+
return await this.findPackageVersionBlock(packageId, '*');
|
|
30
|
+
}
|
|
31
|
+
async findPackageVersionBlock(packageId, version) {
|
|
32
|
+
const model = await PackageVersionBlock_1.PackageVersionBlock.findOne({ packageId, version });
|
|
33
|
+
if (model)
|
|
34
|
+
return ModelConvertor_1.ModelConvertor.convertModelToEntity(model, PackageVersionBlock_2.PackageVersionBlock);
|
|
35
|
+
return null;
|
|
36
|
+
}
|
|
37
|
+
async listPackageVersionBlocks(packageId) {
|
|
38
|
+
return await PackageVersionBlock_1.PackageVersionBlock.find({ packageId });
|
|
39
|
+
}
|
|
40
|
+
async removePackageVersionBlock(packageVersionBlockId) {
|
|
41
|
+
const removeCount = await PackageVersionBlock_1.PackageVersionBlock.remove({ packageVersionBlockId });
|
|
42
|
+
this.logger.info('[PackageVersionBlockRepository:removePackageVersionBlock:remove] %d rows, packageVersionBlockId: %s', removeCount, packageVersionBlockId);
|
|
43
|
+
}
|
|
44
|
+
};
|
|
45
|
+
PackageVersionBlockRepository = __decorate([
|
|
46
|
+
(0, tegg_1.ContextProto)({
|
|
47
|
+
accessLevel: tegg_1.AccessLevel.PUBLIC,
|
|
48
|
+
})
|
|
49
|
+
], PackageVersionBlockRepository);
|
|
50
|
+
exports.PackageVersionBlockRepository = PackageVersionBlockRepository;
|
|
51
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiUGFja2FnZVZlcnNpb25CbG9ja1JlcG9zaXRvcnkuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9hcHAvcmVwb3NpdG9yeS9QYWNrYWdlVmVyc2lvbkJsb2NrUmVwb3NpdG9yeS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7QUFBQSxzQ0FBd0Q7QUFDeEQsMERBQXVEO0FBQ3ZELHFFQUE4RjtBQUM5Riw0RUFBc0c7QUFDdEcsNkRBQTBEO0FBSzFELElBQWEsNkJBQTZCLEdBQTFDLE1BQWEsNkJBQThCLFNBQVEsdUNBQWtCO0lBQ25FLEtBQUssQ0FBQyx1QkFBdUIsQ0FBQyxLQUFnQztRQUM1RCxJQUFJLEtBQUssQ0FBQyxFQUFFLEVBQUU7WUFDWixNQUFNLEtBQUssR0FBRyxNQUFNLHlDQUF3QixDQUFDLE9BQU8sQ0FBQyxFQUFFLEVBQUUsRUFBRSxLQUFLLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FBQztZQUN2RSxJQUFJLENBQUMsS0FBSztnQkFBRSxPQUFPO1lBQ25CLE1BQU0sK0JBQWMsQ0FBQyxpQkFBaUIsQ0FBQyxLQUFLLEVBQUUsS0FBSyxDQUFDLENBQUM7U0FDdEQ7YUFBTTtZQUNMLE1BQU0sS0FBSyxHQUFHLE1BQU0sK0JBQWMsQ0FBQyxvQkFBb0IsQ0FBQyxLQUFLLEVBQUUseUNBQXdCLENBQUMsQ0FBQztZQUN6RixJQUFJLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQywrRkFBK0YsRUFDOUcsS0FBSyxDQUFDLEVBQUUsRUFBRSxLQUFLLENBQUMscUJBQXFCLENBQUMsQ0FBQztTQUMxQztJQUNILENBQUM7SUFFRCxLQUFLLENBQUMsZ0JBQWdCLENBQUMsU0FBaUI7UUFDdEMsT0FBTyxNQUFNLElBQUksQ0FBQyx1QkFBdUIsQ0FBQyxTQUFTLEVBQUUsR0FBRyxDQUFDLENBQUM7SUFDNUQsQ0FBQztJQUVELEtBQUssQ0FBQyx1QkFBdUIsQ0FBQyxTQUFpQixFQUFFLE9BQWU7UUFDOUQsTUFBTSxLQUFLLEdBQUcsTUFBTSx5Q0FBd0IsQ0FBQyxPQUFPLENBQUMsRUFBRSxTQUFTLEVBQUUsT0FBTyxFQUFFLENBQUMsQ0FBQztRQUM3RSxJQUFJLEtBQUs7WUFBRSxPQUFPLCtCQUFjLENBQUMsb0JBQW9CLENBQUMsS0FBSyxFQUFFLHlDQUF5QixDQUFDLENBQUM7UUFDeEYsT0FBTyxJQUFJLENBQUM7SUFDZCxDQUFDO0lBRUQsS0FBSyxDQUFDLHdCQUF3QixDQUFDLFNBQWlCO1FBQzlDLE9BQU8sTUFBTSx5Q0FBd0IsQ0FBQyxJQUFJLENBQUMsRUFBRSxTQUFTLEVBQUUsQ0FBQyxDQUFDO0lBQzVELENBQUM7SUFFRCxLQUFLLENBQUMseUJBQXlCLENBQUMscUJBQTZCO1FBQzNELE1BQU0sV0FBVyxHQUFHLE1BQU0seUNBQXdCLENBQUMsTUFBTSxDQUFDLEVBQUUscUJBQXFCLEVBQUUsQ0FBQyxDQUFDO1FBQ3JGLElBQUksQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLHFHQUFxRyxFQUNwSCxXQUFXLEVBQUUscUJBQXFCLENBQUMsQ0FBQztJQUN4QyxDQUFDO0NBQ0YsQ0FBQTtBQWhDWSw2QkFBNkI7SUFIekMsSUFBQSxtQkFBWSxFQUFDO1FBQ1osV0FBVyxFQUFFLGtCQUFXLENBQUMsTUFBTTtLQUNoQyxDQUFDO0dBQ1csNkJBQTZCLENBZ0N6QztBQWhDWSxzRUFBNkIifQ==
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import { AbstractRepository } from './AbstractRepository';
|
|
2
|
+
import { PackageVersionDownload as PackageVersionDownloadModel } from './model/PackageVersionDownload';
|
|
3
|
+
export declare class PackageVersionDownloadRepository extends AbstractRepository {
|
|
4
|
+
plus(packageId: string, version: string, counter: number): Promise<void>;
|
|
5
|
+
query(packageId: string, start: Date, end: Date): Promise<import("leoric").Collection<PackageVersionDownloadModel>>;
|
|
6
|
+
saveSyncDataByMonth(packageId: string, yearMonth: number, counters: [string, number][]): Promise<void>;
|
|
7
|
+
}
|
|
@@ -0,0 +1,77 @@
|
|
|
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
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
9
|
+
exports.PackageVersionDownloadRepository = void 0;
|
|
10
|
+
const tegg_1 = require("@eggjs/tegg");
|
|
11
|
+
const AbstractRepository_1 = require("./AbstractRepository");
|
|
12
|
+
const PackageVersionDownload_1 = require("./model/PackageVersionDownload");
|
|
13
|
+
let PackageVersionDownloadRepository = class PackageVersionDownloadRepository extends AbstractRepository_1.AbstractRepository {
|
|
14
|
+
async plus(packageId, version, counter) {
|
|
15
|
+
const now = new Date();
|
|
16
|
+
const yearMonth = now.getFullYear() * 100 + now.getMonth() + 1;
|
|
17
|
+
const date = new Date().getDate();
|
|
18
|
+
const field = date < 10 ? `d0${date}` : `d${date}`;
|
|
19
|
+
let model = await PackageVersionDownload_1.PackageVersionDownload.findOne({
|
|
20
|
+
packageId,
|
|
21
|
+
version,
|
|
22
|
+
yearMonth,
|
|
23
|
+
});
|
|
24
|
+
if (!model) {
|
|
25
|
+
// create a record
|
|
26
|
+
const attributes = {
|
|
27
|
+
packageId,
|
|
28
|
+
version,
|
|
29
|
+
yearMonth,
|
|
30
|
+
};
|
|
31
|
+
model = await PackageVersionDownload_1.PackageVersionDownload.create(attributes);
|
|
32
|
+
this.logger.info('[PackageVersionDownloadRepository:plus:new] id: %s, packageId: %s, version: %s, yearMonth: %s', model.id, model.packageId, model.version, model.yearMonth);
|
|
33
|
+
}
|
|
34
|
+
await PackageVersionDownload_1.PackageVersionDownload
|
|
35
|
+
.where({ id: model.id })
|
|
36
|
+
.increment(field, counter);
|
|
37
|
+
this.logger.info('[PackageVersionDownloadRepository:plus:increment] id: %s, packageId: %s, version: %s, field: %s%s, plus: %d', model.id, model.packageId, model.version, model.yearMonth, field, counter);
|
|
38
|
+
}
|
|
39
|
+
async query(packageId, start, end) {
|
|
40
|
+
const startYearMonth = start.getFullYear() * 100 + start.getMonth() + 1;
|
|
41
|
+
const endYearMonth = end.getFullYear() * 100 + end.getMonth() + 1;
|
|
42
|
+
const models = await PackageVersionDownload_1.PackageVersionDownload.find({
|
|
43
|
+
packageId,
|
|
44
|
+
yearMonth: { $gte: startYearMonth, $lte: endYearMonth },
|
|
45
|
+
});
|
|
46
|
+
return models;
|
|
47
|
+
}
|
|
48
|
+
async saveSyncDataByMonth(packageId, yearMonth, counters) {
|
|
49
|
+
const version = '*';
|
|
50
|
+
let model = await PackageVersionDownload_1.PackageVersionDownload.findOne({
|
|
51
|
+
packageId,
|
|
52
|
+
version,
|
|
53
|
+
yearMonth,
|
|
54
|
+
});
|
|
55
|
+
if (!model) {
|
|
56
|
+
// create a record
|
|
57
|
+
const attributes = {
|
|
58
|
+
packageId,
|
|
59
|
+
version,
|
|
60
|
+
yearMonth,
|
|
61
|
+
};
|
|
62
|
+
model = await PackageVersionDownload_1.PackageVersionDownload.create(attributes);
|
|
63
|
+
}
|
|
64
|
+
for (const [date, counter] of counters) {
|
|
65
|
+
const field = `d${date}`;
|
|
66
|
+
model[field] = counter;
|
|
67
|
+
}
|
|
68
|
+
await model.save();
|
|
69
|
+
}
|
|
70
|
+
};
|
|
71
|
+
PackageVersionDownloadRepository = __decorate([
|
|
72
|
+
(0, tegg_1.ContextProto)({
|
|
73
|
+
accessLevel: tegg_1.AccessLevel.PUBLIC,
|
|
74
|
+
})
|
|
75
|
+
], PackageVersionDownloadRepository);
|
|
76
|
+
exports.PackageVersionDownloadRepository = PackageVersionDownloadRepository;
|
|
77
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiUGFja2FnZVZlcnNpb25Eb3dubG9hZFJlcG9zaXRvcnkuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9hcHAvcmVwb3NpdG9yeS9QYWNrYWdlVmVyc2lvbkRvd25sb2FkUmVwb3NpdG9yeS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7QUFBQSxzQ0FBd0Q7QUFDeEQsNkRBQTBEO0FBQzFELDJFQUF1RztBQUt2RyxJQUFhLGdDQUFnQyxHQUE3QyxNQUFhLGdDQUFpQyxTQUFRLHVDQUFrQjtJQUN0RSxLQUFLLENBQUMsSUFBSSxDQUFDLFNBQWlCLEVBQUUsT0FBZSxFQUFFLE9BQWU7UUFDNUQsTUFBTSxHQUFHLEdBQUcsSUFBSSxJQUFJLEVBQUUsQ0FBQztRQUN2QixNQUFNLFNBQVMsR0FBRyxHQUFHLENBQUMsV0FBVyxFQUFFLEdBQUcsR0FBRyxHQUFHLEdBQUcsQ0FBQyxRQUFRLEVBQUUsR0FBRyxDQUFDLENBQUM7UUFDL0QsTUFBTSxJQUFJLEdBQUcsSUFBSSxJQUFJLEVBQUUsQ0FBQyxPQUFPLEVBQUUsQ0FBQztRQUNsQyxNQUFNLEtBQUssR0FBRyxJQUFJLEdBQUcsRUFBRSxDQUFDLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxDQUFDLENBQUMsQ0FBQyxJQUFJLElBQUksRUFBRSxDQUFDO1FBQ25ELElBQUksS0FBSyxHQUFHLE1BQU0sK0NBQTJCLENBQUMsT0FBTyxDQUFDO1lBQ3BELFNBQVM7WUFDVCxPQUFPO1lBQ1AsU0FBUztTQUNWLENBQUMsQ0FBQztRQUNILElBQUksQ0FBQyxLQUFLLEVBQUU7WUFDVixrQkFBa0I7WUFDbEIsTUFBTSxVQUFVLEdBQUc7Z0JBQ2pCLFNBQVM7Z0JBQ1QsT0FBTztnQkFDUCxTQUFTO2FBQ1YsQ0FBQztZQUNGLEtBQUssR0FBRyxNQUFNLCtDQUEyQixDQUFDLE1BQU0sQ0FBQyxVQUFVLENBQUMsQ0FBQztZQUM3RCxJQUFJLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQywrRkFBK0YsRUFDOUcsS0FBSyxDQUFDLEVBQUUsRUFBRSxLQUFLLENBQUMsU0FBUyxFQUFFLEtBQUssQ0FBQyxPQUFPLEVBQUUsS0FBSyxDQUFDLFNBQVMsQ0FBQyxDQUFDO1NBQzlEO1FBQ0QsTUFBTSwrQ0FBMkI7YUFDOUIsS0FBSyxDQUFDLEVBQUUsRUFBRSxFQUFFLEtBQUssQ0FBQyxFQUFFLEVBQUUsQ0FBQzthQUN2QixTQUFTLENBQUMsS0FBSyxFQUFFLE9BQU8sQ0FBQyxDQUFDO1FBQzdCLElBQUksQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLDZHQUE2RyxFQUM1SCxLQUFLLENBQUMsRUFBRSxFQUFFLEtBQUssQ0FBQyxTQUFTLEVBQUUsS0FBSyxDQUFDLE9BQU8sRUFBRSxLQUFLLENBQUMsU0FBUyxFQUFFLEtBQUssRUFBRSxPQUFPLENBQUMsQ0FBQztJQUMvRSxDQUFDO0lBRUQsS0FBSyxDQUFDLEtBQUssQ0FBQyxTQUFpQixFQUFFLEtBQVcsRUFBRSxHQUFTO1FBQ25ELE1BQU0sY0FBYyxHQUFHLEtBQUssQ0FBQyxXQUFXLEVBQUUsR0FBRyxHQUFHLEdBQUcsS0FBSyxDQUFDLFFBQVEsRUFBRSxHQUFHLENBQUMsQ0FBQztRQUN4RSxNQUFNLFlBQVksR0FBRyxHQUFHLENBQUMsV0FBVyxFQUFFLEdBQUcsR0FBRyxHQUFHLEdBQUcsQ0FBQyxRQUFRLEVBQUUsR0FBRyxDQUFDLENBQUM7UUFDbEUsTUFBTSxNQUFNLEdBQUcsTUFBTSwrQ0FBMkIsQ0FBQyxJQUFJLENBQUM7WUFDcEQsU0FBUztZQUNULFNBQVMsRUFBRSxFQUFFLElBQUksRUFBRSxjQUFjLEVBQUUsSUFBSSxFQUFFLFlBQVksRUFBRTtTQUN4RCxDQUFDLENBQUM7UUFDSCxPQUFPLE1BQU0sQ0FBQztJQUNoQixDQUFDO0lBRUQsS0FBSyxDQUFDLG1CQUFtQixDQUFDLFNBQWlCLEVBQUUsU0FBaUIsRUFBRSxRQUE0QjtRQUMxRixNQUFNLE9BQU8sR0FBRyxHQUFHLENBQUM7UUFDcEIsSUFBSSxLQUFLLEdBQUcsTUFBTSwrQ0FBMkIsQ0FBQyxPQUFPLENBQUM7WUFDcEQsU0FBUztZQUNULE9BQU87WUFDUCxTQUFTO1NBQ1YsQ0FBQyxDQUFDO1FBQ0gsSUFBSSxDQUFDLEtBQUssRUFBRTtZQUNWLGtCQUFrQjtZQUNsQixNQUFNLFVBQVUsR0FBRztnQkFDakIsU0FBUztnQkFDVCxPQUFPO2dCQUNQLFNBQVM7YUFDVixDQUFDO1lBQ0YsS0FBSyxHQUFHLE1BQU0sK0NBQTJCLENBQUMsTUFBTSxDQUFDLFVBQVUsQ0FBQyxDQUFDO1NBQzlEO1FBQ0QsS0FBSyxNQUFNLENBQUUsSUFBSSxFQUFFLE9BQU8sQ0FBRSxJQUFJLFFBQVEsRUFBRTtZQUN4QyxNQUFNLEtBQUssR0FBRyxJQUFJLElBQUksRUFBRSxDQUFDO1lBQ3pCLEtBQUssQ0FBQyxLQUFLLENBQUMsR0FBRyxPQUFPLENBQUM7U0FDeEI7UUFDRCxNQUFNLEtBQUssQ0FBQyxJQUFJLEVBQUUsQ0FBQztJQUNyQixDQUFDO0NBQ0YsQ0FBQTtBQTdEWSxnQ0FBZ0M7SUFINUMsSUFBQSxtQkFBWSxFQUFDO1FBQ1osV0FBVyxFQUFFLGtCQUFXLENBQUMsTUFBTTtLQUNoQyxDQUFDO0dBQ1csZ0NBQWdDLENBNkQ1QztBQTdEWSw0RUFBZ0MifQ==
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import { Task as TaskEntity } from '../core/entity/Task';
|
|
2
|
+
import { AbstractRepository } from './AbstractRepository';
|
|
3
|
+
import { TaskType, TaskState } from '../../app/common/enum/Task';
|
|
4
|
+
export declare class TaskRepository extends AbstractRepository {
|
|
5
|
+
saveTask(task: TaskEntity): Promise<void>;
|
|
6
|
+
saveTaskToHistory(task: TaskEntity): Promise<void>;
|
|
7
|
+
findTask(taskId: string): Promise<TaskEntity | null>;
|
|
8
|
+
findTaskByTargetName(targetName: string, type: TaskType, state?: TaskState): Promise<TaskEntity | null>;
|
|
9
|
+
findTimeoutTasks(taskState: TaskState, timeout: number): Promise<TaskEntity[]>;
|
|
10
|
+
}
|
|
@@ -0,0 +1,82 @@
|
|
|
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
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
9
|
+
exports.TaskRepository = void 0;
|
|
10
|
+
const tegg_1 = require("@eggjs/tegg");
|
|
11
|
+
const ModelConvertor_1 = require("./util/ModelConvertor");
|
|
12
|
+
const Task_1 = require("./model/Task");
|
|
13
|
+
const HistoryTask_1 = require("./model/HistoryTask");
|
|
14
|
+
const Task_2 = require("../core/entity/Task");
|
|
15
|
+
const AbstractRepository_1 = require("./AbstractRepository");
|
|
16
|
+
let TaskRepository = class TaskRepository extends AbstractRepository_1.AbstractRepository {
|
|
17
|
+
async saveTask(task) {
|
|
18
|
+
if (task.id) {
|
|
19
|
+
const model = await Task_1.Task.findOne({ id: task.id });
|
|
20
|
+
if (!model)
|
|
21
|
+
return;
|
|
22
|
+
await ModelConvertor_1.ModelConvertor.saveEntityToModel(task, model);
|
|
23
|
+
}
|
|
24
|
+
else {
|
|
25
|
+
await ModelConvertor_1.ModelConvertor.convertEntityToModel(task, Task_1.Task);
|
|
26
|
+
}
|
|
27
|
+
}
|
|
28
|
+
async saveTaskToHistory(task) {
|
|
29
|
+
const model = await Task_1.Task.findOne({ id: task.id });
|
|
30
|
+
if (!model)
|
|
31
|
+
return;
|
|
32
|
+
const history = await HistoryTask_1.HistoryTask.findOne({ taskId: task.taskId });
|
|
33
|
+
if (history) {
|
|
34
|
+
await ModelConvertor_1.ModelConvertor.saveEntityToModel(task, history);
|
|
35
|
+
}
|
|
36
|
+
else {
|
|
37
|
+
await ModelConvertor_1.ModelConvertor.convertEntityToModel(task, HistoryTask_1.HistoryTask);
|
|
38
|
+
}
|
|
39
|
+
await model.remove();
|
|
40
|
+
}
|
|
41
|
+
async findTask(taskId) {
|
|
42
|
+
const task = await Task_1.Task.findOne({ taskId });
|
|
43
|
+
if (task) {
|
|
44
|
+
return ModelConvertor_1.ModelConvertor.convertModelToEntity(task, Task_2.Task);
|
|
45
|
+
}
|
|
46
|
+
// try to read from history
|
|
47
|
+
const history = await HistoryTask_1.HistoryTask.findOne({ taskId });
|
|
48
|
+
if (history) {
|
|
49
|
+
return ModelConvertor_1.ModelConvertor.convertModelToEntity(history, Task_2.Task);
|
|
50
|
+
}
|
|
51
|
+
return null;
|
|
52
|
+
}
|
|
53
|
+
async findTaskByTargetName(targetName, type, state) {
|
|
54
|
+
const where = { targetName, type };
|
|
55
|
+
if (state) {
|
|
56
|
+
where.state = state;
|
|
57
|
+
}
|
|
58
|
+
const task = await Task_1.Task.findOne(where);
|
|
59
|
+
if (task) {
|
|
60
|
+
return ModelConvertor_1.ModelConvertor.convertModelToEntity(task, Task_2.Task);
|
|
61
|
+
}
|
|
62
|
+
return null;
|
|
63
|
+
}
|
|
64
|
+
async findTimeoutTasks(taskState, timeout) {
|
|
65
|
+
const timeoutDate = new Date();
|
|
66
|
+
timeoutDate.setTime(timeoutDate.getTime() - timeout);
|
|
67
|
+
const models = await Task_1.Task.find({
|
|
68
|
+
state: taskState,
|
|
69
|
+
updatedAt: {
|
|
70
|
+
$lt: timeoutDate,
|
|
71
|
+
},
|
|
72
|
+
}).limit(1000);
|
|
73
|
+
return models.map(model => ModelConvertor_1.ModelConvertor.convertModelToEntity(model, Task_2.Task));
|
|
74
|
+
}
|
|
75
|
+
};
|
|
76
|
+
TaskRepository = __decorate([
|
|
77
|
+
(0, tegg_1.ContextProto)({
|
|
78
|
+
accessLevel: tegg_1.AccessLevel.PUBLIC,
|
|
79
|
+
})
|
|
80
|
+
], TaskRepository);
|
|
81
|
+
exports.TaskRepository = TaskRepository;
|
|
82
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiVGFza1JlcG9zaXRvcnkuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9hcHAvcmVwb3NpdG9yeS9UYXNrUmVwb3NpdG9yeS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7QUFBQSxzQ0FBd0Q7QUFDeEQsMERBQXVEO0FBQ3ZELHVDQUFpRDtBQUNqRCxxREFBc0U7QUFDdEUsOENBQXlEO0FBQ3pELDZEQUEwRDtBQU0xRCxJQUFhLGNBQWMsR0FBM0IsTUFBYSxjQUFlLFNBQVEsdUNBQWtCO0lBQ3BELEtBQUssQ0FBQyxRQUFRLENBQUMsSUFBZ0I7UUFDN0IsSUFBSSxJQUFJLENBQUMsRUFBRSxFQUFFO1lBQ1gsTUFBTSxLQUFLLEdBQUcsTUFBTSxXQUFTLENBQUMsT0FBTyxDQUFDLEVBQUUsRUFBRSxFQUFFLElBQUksQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDO1lBQ3ZELElBQUksQ0FBQyxLQUFLO2dCQUFFLE9BQU87WUFDbkIsTUFBTSwrQkFBYyxDQUFDLGlCQUFpQixDQUFDLElBQUksRUFBRSxLQUFLLENBQUMsQ0FBQztTQUNyRDthQUFNO1lBQ0wsTUFBTSwrQkFBYyxDQUFDLG9CQUFvQixDQUFDLElBQUksRUFBRSxXQUFTLENBQUMsQ0FBQztTQUM1RDtJQUNILENBQUM7SUFFRCxLQUFLLENBQUMsaUJBQWlCLENBQUMsSUFBZ0I7UUFDdEMsTUFBTSxLQUFLLEdBQUcsTUFBTSxXQUFTLENBQUMsT0FBTyxDQUFDLEVBQUUsRUFBRSxFQUFFLElBQUksQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDO1FBQ3ZELElBQUksQ0FBQyxLQUFLO1lBQUUsT0FBTztRQUNuQixNQUFNLE9BQU8sR0FBRyxNQUFNLHlCQUFnQixDQUFDLE9BQU8sQ0FBQyxFQUFFLE1BQU0sRUFBRSxJQUFJLENBQUMsTUFBTSxFQUFFLENBQUMsQ0FBQztRQUN4RSxJQUFJLE9BQU8sRUFBRTtZQUNYLE1BQU0sK0JBQWMsQ0FBQyxpQkFBaUIsQ0FBQyxJQUFJLEVBQUUsT0FBTyxDQUFDLENBQUM7U0FDdkQ7YUFBTTtZQUNMLE1BQU0sK0JBQWMsQ0FBQyxvQkFBb0IsQ0FBQyxJQUFJLEVBQUUseUJBQWdCLENBQUMsQ0FBQztTQUNuRTtRQUNELE1BQU0sS0FBSyxDQUFDLE1BQU0sRUFBRSxDQUFDO0lBQ3ZCLENBQUM7SUFFRCxLQUFLLENBQUMsUUFBUSxDQUFDLE1BQWM7UUFDM0IsTUFBTSxJQUFJLEdBQUcsTUFBTSxXQUFTLENBQUMsT0FBTyxDQUFDLEVBQUUsTUFBTSxFQUFFLENBQUMsQ0FBQztRQUNqRCxJQUFJLElBQUksRUFBRTtZQUNSLE9BQU8sK0JBQWMsQ0FBQyxvQkFBb0IsQ0FBQyxJQUFJLEVBQUUsV0FBVSxDQUFDLENBQUM7U0FDOUQ7UUFDRCwyQkFBMkI7UUFDM0IsTUFBTSxPQUFPLEdBQUcsTUFBTSx5QkFBZ0IsQ0FBQyxPQUFPLENBQUMsRUFBRSxNQUFNLEVBQUUsQ0FBQyxDQUFDO1FBQzNELElBQUksT0FBTyxFQUFFO1lBQ1gsT0FBTywrQkFBYyxDQUFDLG9CQUFvQixDQUFDLE9BQU8sRUFBRSxXQUFVLENBQUMsQ0FBQztTQUNqRTtRQUNELE9BQU8sSUFBSSxDQUFDO0lBQ2QsQ0FBQztJQUVELEtBQUssQ0FBQyxvQkFBb0IsQ0FBQyxVQUFrQixFQUFFLElBQWMsRUFBRSxLQUFpQjtRQUM5RSxNQUFNLEtBQUssR0FBUSxFQUFFLFVBQVUsRUFBRSxJQUFJLEVBQUUsQ0FBQztRQUN4QyxJQUFJLEtBQUssRUFBRTtZQUNULEtBQUssQ0FBQyxLQUFLLEdBQUcsS0FBSyxDQUFDO1NBQ3JCO1FBQ0QsTUFBTSxJQUFJLEdBQUcsTUFBTSxXQUFTLENBQUMsT0FBTyxDQUFDLEtBQUssQ0FBQyxDQUFDO1FBQzVDLElBQUksSUFBSSxFQUFFO1lBQ1IsT0FBTywrQkFBYyxDQUFDLG9CQUFvQixDQUFDLElBQUksRUFBRSxXQUFVLENBQUMsQ0FBQztTQUM5RDtRQUNELE9BQU8sSUFBSSxDQUFDO0lBQ2QsQ0FBQztJQUVELEtBQUssQ0FBQyxnQkFBZ0IsQ0FBQyxTQUFvQixFQUFFLE9BQWU7UUFDMUQsTUFBTSxXQUFXLEdBQUcsSUFBSSxJQUFJLEVBQUUsQ0FBQztRQUMvQixXQUFXLENBQUMsT0FBTyxDQUFDLFdBQVcsQ0FBQyxPQUFPLEVBQUUsR0FBRyxPQUFPLENBQUMsQ0FBQztRQUNyRCxNQUFNLE1BQU0sR0FBRyxNQUFNLFdBQVMsQ0FBQyxJQUFJLENBQUM7WUFDbEMsS0FBSyxFQUFFLFNBQVM7WUFDaEIsU0FBUyxFQUFFO2dCQUNULEdBQUcsRUFBRSxXQUFXO2FBQ2pCO1NBQ0YsQ0FBQyxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsQ0FBQztRQUNmLE9BQU8sTUFBTSxDQUFDLEdBQUcsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLCtCQUFjLENBQUMsb0JBQW9CLENBQUMsS0FBSyxFQUFFLFdBQVUsQ0FBQyxDQUFDLENBQUM7SUFDckYsQ0FBQztDQUNGLENBQUE7QUEzRFksY0FBYztJQUgxQixJQUFBLG1CQUFZLEVBQUM7UUFDWixXQUFXLEVBQUUsa0JBQVcsQ0FBQyxNQUFNO0tBQ2hDLENBQUM7R0FDVyxjQUFjLENBMkQxQjtBQTNEWSx3Q0FBYyJ9
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
import { User as UserEntity } from '../core/entity/User';
|
|
2
|
+
import { Token as TokenEntity } from '../core/entity/Token';
|
|
3
|
+
import { AbstractRepository } from './AbstractRepository';
|
|
4
|
+
export declare class UserRepository extends AbstractRepository {
|
|
5
|
+
saveUser(user: UserEntity): Promise<void>;
|
|
6
|
+
findUserByName(name: string): Promise<UserEntity | null>;
|
|
7
|
+
findUserAndTokenByTokenKey(tokenKey: string): Promise<{
|
|
8
|
+
token: TokenEntity;
|
|
9
|
+
user: UserEntity;
|
|
10
|
+
} | null>;
|
|
11
|
+
findTokenByTokenKey(tokenKey: string): Promise<TokenEntity | null>;
|
|
12
|
+
saveToken(token: TokenEntity): Promise<void>;
|
|
13
|
+
removeToken(tokenId: string): Promise<void>;
|
|
14
|
+
listTokens(userId: string): Promise<TokenEntity[]>;
|
|
15
|
+
}
|