cnpmcore 1.10.0 → 1.11.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.
Files changed (103) hide show
  1. package/History.md +17 -0
  2. package/dist/app/common/LogUtil.d.ts +1 -0
  3. package/dist/app/common/LogUtil.js +8 -0
  4. package/dist/app/common/adapter/NPMRegistry.d.ts +2 -0
  5. package/dist/app/common/adapter/NPMRegistry.js +5 -2
  6. package/dist/app/common/adapter/binary/NodePreGypBinary.js +20 -5
  7. package/dist/app/common/adapter/changesStream/AbstractChangesStream.d.ts +19 -0
  8. package/dist/app/common/adapter/changesStream/AbstractChangesStream.js +30 -0
  9. package/dist/app/common/adapter/changesStream/CnpmcoreChangesStream.d.ts +8 -0
  10. package/dist/app/common/adapter/changesStream/CnpmcoreChangesStream.js +62 -0
  11. package/dist/app/common/adapter/changesStream/CnpmjsorgChangesStream.d.ts +9 -0
  12. package/dist/app/common/adapter/changesStream/CnpmjsorgChangesStream.js +73 -0
  13. package/dist/app/common/adapter/changesStream/NpmChangesStream.d.ts +8 -0
  14. package/dist/app/common/adapter/changesStream/NpmChangesStream.js +51 -0
  15. package/dist/app/common/enum/Hook.d.ts +18 -0
  16. package/dist/app/common/enum/Hook.js +24 -0
  17. package/dist/app/common/enum/Registry.d.ts +5 -0
  18. package/dist/app/common/enum/Registry.js +10 -0
  19. package/dist/app/common/enum/Task.d.ts +3 -1
  20. package/dist/app/common/enum/Task.js +3 -1
  21. package/dist/app/core/entity/Hook.d.ts +30 -0
  22. package/dist/app/core/entity/Hook.js +43 -0
  23. package/dist/app/core/entity/HookEvent.d.ts +36 -0
  24. package/dist/app/core/entity/HookEvent.js +59 -0
  25. package/dist/app/core/entity/Package.d.ts +2 -0
  26. package/dist/app/core/entity/Package.js +2 -1
  27. package/dist/app/core/entity/Registry.d.ts +23 -0
  28. package/dist/app/core/entity/Registry.js +22 -0
  29. package/dist/app/core/entity/Scope.d.ts +16 -0
  30. package/dist/app/core/entity/Scope.js +19 -0
  31. package/dist/app/core/entity/Task.d.ts +50 -8
  32. package/dist/app/core/entity/Task.js +60 -9
  33. package/dist/app/core/event/ChangesStream.d.ts +10 -5
  34. package/dist/app/core/event/ChangesStream.js +46 -15
  35. package/dist/app/core/event/index.d.ts +12 -4
  36. package/dist/app/core/event/index.js +1 -1
  37. package/dist/app/core/service/BinarySyncerService.d.ts +3 -3
  38. package/dist/app/core/service/ChangesStreamService.d.ts +15 -5
  39. package/dist/app/core/service/ChangesStreamService.js +113 -115
  40. package/dist/app/core/service/CreateHookTriggerService.d.ts +10 -0
  41. package/dist/app/core/service/CreateHookTriggerService.js +83 -0
  42. package/dist/app/core/service/HookManageService.d.ts +29 -0
  43. package/dist/app/core/service/HookManageService.js +77 -0
  44. package/dist/app/core/service/HookTriggerService.d.ts +14 -0
  45. package/dist/app/core/service/HookTriggerService.js +113 -0
  46. package/dist/app/core/service/PackageManagerService.d.ts +1 -0
  47. package/dist/app/core/service/PackageManagerService.js +8 -5
  48. package/dist/app/core/service/PackageSyncerService.d.ts +7 -4
  49. package/dist/app/core/service/PackageSyncerService.js +23 -4
  50. package/dist/app/core/service/RegistryManagerService.d.ts +29 -0
  51. package/dist/app/core/service/RegistryManagerService.js +97 -0
  52. package/dist/app/core/service/ScopeManagerService.d.ts +27 -0
  53. package/dist/app/core/service/ScopeManagerService.js +58 -0
  54. package/dist/app/core/service/TaskService.d.ts +4 -3
  55. package/dist/app/core/service/TaskService.js +10 -5
  56. package/dist/app/core/service/UserService.d.ts +1 -1
  57. package/dist/app/core/service/UserService.js +3 -3
  58. package/dist/app/core/util/ChangesStreamTransform.d.ts +8 -0
  59. package/dist/app/core/util/ChangesStreamTransform.js +50 -0
  60. package/dist/app/core/util/EntityUtil.d.ts +13 -0
  61. package/dist/app/core/util/EntityUtil.js +13 -1
  62. package/dist/app/port/UserRoleManager.d.ts +1 -2
  63. package/dist/app/port/controller/HookController.d.ts +23 -0
  64. package/dist/app/port/controller/HookController.js +133 -0
  65. package/dist/app/port/controller/PackageSyncController.d.ts +1 -0
  66. package/dist/app/port/controller/PackageSyncController.js +13 -2
  67. package/dist/app/port/controller/RegistryController.d.ts +20 -0
  68. package/dist/app/port/controller/RegistryController.js +131 -0
  69. package/dist/app/port/controller/ScopeController.d.ts +14 -0
  70. package/dist/app/port/controller/ScopeController.js +68 -0
  71. package/dist/app/port/controller/convertor/HookConvertor.d.ts +37 -0
  72. package/dist/app/port/controller/convertor/HookConvertor.js +29 -0
  73. package/dist/app/port/middleware/AdminAccess.d.ts +2 -0
  74. package/dist/app/port/middleware/AdminAccess.js +15 -0
  75. package/dist/app/port/typebox.d.ts +48 -0
  76. package/dist/app/port/typebox.js +126 -2
  77. package/dist/app/repository/HookRepository.d.ts +19 -0
  78. package/dist/app/repository/HookRepository.js +69 -0
  79. package/dist/app/repository/RegistryRepository.d.ts +12 -0
  80. package/dist/app/repository/RegistryRepository.js +64 -0
  81. package/dist/app/repository/ScopeRepository.d.ts +14 -0
  82. package/dist/app/repository/ScopeRepository.js +73 -0
  83. package/dist/app/repository/TaskRepository.d.ts +5 -3
  84. package/dist/app/repository/TaskRepository.js +32 -2
  85. package/dist/app/repository/UserRepository.d.ts +1 -0
  86. package/dist/app/repository/UserRepository.js +7 -1
  87. package/dist/app/repository/model/Hook.d.ts +15 -0
  88. package/dist/app/repository/model/Hook.js +58 -0
  89. package/dist/app/repository/model/Package.d.ts +1 -0
  90. package/dist/app/repository/model/Package.js +4 -1
  91. package/dist/app/repository/model/Registry.d.ts +13 -0
  92. package/dist/app/repository/model/Registry.js +50 -0
  93. package/dist/app/repository/model/Scope.d.ts +9 -0
  94. package/dist/app/repository/model/Scope.js +39 -0
  95. package/dist/app/repository/model/Task.d.ts +1 -0
  96. package/dist/app/repository/model/Task.js +6 -1
  97. package/dist/app/schedule/CreateTriggerHookWorker.d.ts +8 -0
  98. package/dist/app/schedule/CreateTriggerHookWorker.js +51 -0
  99. package/dist/app/schedule/TriggerHookWorker.d.ts +8 -0
  100. package/dist/app/schedule/TriggerHookWorker.js +49 -0
  101. package/dist/config/binaries.js +8 -1
  102. package/dist/config/config.default.js +5 -1
  103. package/package.json +1 -1
@@ -20,7 +20,26 @@ let TaskRepository = class TaskRepository extends AbstractRepository_1.AbstractR
20
20
  await ModelConvertor_1.ModelConvertor.saveEntityToModel(task, model);
21
21
  }
22
22
  else {
23
- await ModelConvertor_1.ModelConvertor.convertEntityToModel(task, this.Task);
23
+ try {
24
+ await ModelConvertor_1.ModelConvertor.convertEntityToModel(task, this.Task);
25
+ }
26
+ catch (e) {
27
+ e.message = '[TaskRepository] insert Task failed: ' + e.message;
28
+ if (e.code === 'ER_DUP_ENTRY') {
29
+ this.logger.warn(e);
30
+ const taskModel = await this.Task.findOne({ bizId: task.bizId });
31
+ // 覆盖 bizId 相同的 id 和 taskId
32
+ if (taskModel) {
33
+ task.id = taskModel.id;
34
+ task.taskId = taskModel.taskId;
35
+ return;
36
+ }
37
+ // taskModel 可能不存在,遇到数据错误
38
+ // 重新将错误抛出。
39
+ throw e;
40
+ }
41
+ throw e;
42
+ }
24
43
  }
25
44
  }
26
45
  async saveTaskToHistory(task) {
@@ -48,6 +67,17 @@ let TaskRepository = class TaskRepository extends AbstractRepository_1.AbstractR
48
67
  }
49
68
  return null;
50
69
  }
70
+ async findTaskByBizId(bizId) {
71
+ const task = await this.Task.findOne({ bizId });
72
+ if (task) {
73
+ return ModelConvertor_1.ModelConvertor.convertModelToEntity(task, Task_1.Task);
74
+ }
75
+ return null;
76
+ }
77
+ async findTasks(taskIds) {
78
+ const tasks = await this.HistoryTask.find({ taskId: { $in: taskIds } });
79
+ return tasks.map(task => ModelConvertor_1.ModelConvertor.convertModelToEntity(task, Task_1.Task));
80
+ }
51
81
  async findTaskByTargetName(targetName, type, state) {
52
82
  const where = { targetName, type };
53
83
  if (state) {
@@ -83,4 +113,4 @@ TaskRepository = __decorate([
83
113
  })
84
114
  ], TaskRepository);
85
115
  exports.TaskRepository = TaskRepository;
86
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiVGFza1JlcG9zaXRvcnkuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9hcHAvcmVwb3NpdG9yeS9UYXNrUmVwb3NpdG9yeS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7QUFBQSxzQ0FBZ0U7QUFDaEUsMERBQXVEO0FBR3ZELDhDQUF5RDtBQUN6RCw2REFBMEQ7QUFNMUQsSUFBYSxjQUFjLEdBQTNCLE1BQWEsY0FBZSxTQUFRLHVDQUFrQjtJQU9wRCxLQUFLLENBQUMsUUFBUSxDQUFDLElBQWdCO1FBQzdCLElBQUksSUFBSSxDQUFDLEVBQUUsRUFBRTtZQUNYLE1BQU0sS0FBSyxHQUFHLE1BQU0sSUFBSSxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsRUFBRSxFQUFFLEVBQUUsSUFBSSxDQUFDLEVBQUUsRUFBRSxDQUFDLENBQUM7WUFDdkQsSUFBSSxDQUFDLEtBQUs7Z0JBQUUsT0FBTztZQUNuQixNQUFNLCtCQUFjLENBQUMsaUJBQWlCLENBQUMsSUFBSSxFQUFFLEtBQUssQ0FBQyxDQUFDO1NBQ3JEO2FBQU07WUFDTCxNQUFNLCtCQUFjLENBQUMsb0JBQW9CLENBQUMsSUFBSSxFQUFFLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQztTQUM1RDtJQUNILENBQUM7SUFFRCxLQUFLLENBQUMsaUJBQWlCLENBQUMsSUFBZ0I7UUFDdEMsTUFBTSxLQUFLLEdBQUcsTUFBTSxJQUFJLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxFQUFFLEVBQUUsRUFBRSxJQUFJLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FBQztRQUN2RCxJQUFJLENBQUMsS0FBSztZQUFFLE9BQU87UUFDbkIsTUFBTSxPQUFPLEdBQUcsTUFBTSxJQUFJLENBQUMsV0FBVyxDQUFDLE9BQU8sQ0FBQyxFQUFFLE1BQU0sRUFBRSxJQUFJLENBQUMsTUFBTSxFQUFFLENBQUMsQ0FBQztRQUN4RSxJQUFJLE9BQU8sRUFBRTtZQUNYLE1BQU0sK0JBQWMsQ0FBQyxpQkFB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
116
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiVGFza1JlcG9zaXRvcnkuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9hcHAvcmVwb3NpdG9yeS9UYXNrUmVwb3NpdG9yeS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7QUFBQSxzQ0FBZ0U7QUFDaEUsMERBQXVEO0FBR3ZELDhDQUF5RDtBQUN6RCw2REFBMEQ7QUFNMUQsSUFBYSxjQUFjLEdBQTNCLE1BQWEsY0FBZSxTQUFRLHVDQUFrQjtJQU9wRCxLQUFLLENBQUMsUUFBUSxDQUFDLElBQWdCO1FBQzdCLElBQUksSUFBSSxDQUFDLEVBQUUsRUFBRTtZQUNYLE1BQU0sS0FBSyxHQUFHLE1BQU0sSUFBSSxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsRUFBRSxFQUFFLEVBQUUsSUFBSSxDQUFDLEVBQUUsRUFBRSxDQUFDLENBQUM7WUFDdkQsSUFBSSxDQUFDLEtBQUs7Z0JBQUUsT0FBTztZQUNuQixNQUFNLCtCQUFjLENBQUMsaUJBQWlCLENBQUMsSUFBSSxFQUFFLEtBQUssQ0FBQyxDQUFDO1NBQ3JEO2FBQU07WUFDTCxJQUFJO2dCQUNGLE1BQU0sK0JBQWMsQ0FBQyxvQkFBb0IsQ0FBQyxJQUFJLEVBQUUsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDO2FBQzVEO1lBQUMsT0FBTyxDQUFDLEVBQUU7Z0JBQ1YsQ0FBQyxDQUFDLE9BQU8sR0FBRyx1Q0FBdUMsR0FBRyxDQUFDLENBQUMsT0FBTyxDQUFDO2dCQUNoRSxJQUFJLENBQUMsQ0FBQyxJQUFJLEtBQUssY0FBYyxFQUFFO29CQUM3QixJQUFJLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsQ0FBQztvQkFDcEIsTUFBTSxTQUFTLEdBQUcsTUFBTSxJQUFJLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxFQUFFLEtBQUssRUFBRSxJQUFJLENBQUMsS0FBSyxFQUFFLENBQUMsQ0FBQztvQkFDakUsMkJBQTJCO29CQUMzQixJQUFJLFNBQVMsRUFBRTt3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
@@ -6,6 +6,7 @@ export declare class UserRepository extends AbstractRepository {
6
6
  private readonly Token;
7
7
  saveUser(user: UserEntity): Promise<void>;
8
8
  findUserByName(name: string): Promise<UserEntity | null>;
9
+ findUserByUserId(userId: string): Promise<UserEntity | null>;
9
10
  findUserAndTokenByTokenKey(tokenKey: string): Promise<{
10
11
  token: TokenEntity;
11
12
  user: UserEntity;
@@ -31,6 +31,12 @@ let UserRepository = class UserRepository extends AbstractRepository_1.AbstractR
31
31
  return null;
32
32
  return ModelConvertor_1.ModelConvertor.convertModelToEntity(model, User_1.User);
33
33
  }
34
+ async findUserByUserId(userId) {
35
+ const model = await this.User.findOne({ userId });
36
+ if (!model)
37
+ return null;
38
+ return ModelConvertor_1.ModelConvertor.convertModelToEntity(model, User_1.User);
39
+ }
34
40
  async findUserAndTokenByTokenKey(tokenKey) {
35
41
  const token = await this.findTokenByTokenKey(tokenKey);
36
42
  if (!token)
@@ -82,4 +88,4 @@ UserRepository = __decorate([
82
88
  })
83
89
  ], UserRepository);
84
90
  exports.UserRepository = UserRepository;
85
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiVXNlclJlcG9zaXRvcnkuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9hcHAvcmVwb3NpdG9yeS9Vc2VyUmVwb3NpdG9yeS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7QUFBQSxzQ0FBZ0U7QUFDaEUsMERBQXVEO0FBR3ZELDhDQUF5RDtBQUN6RCxnREFBNEQ7QUFDNUQsNkRBQTBEO0FBSzFELElBQWEsY0FBYyxHQUEzQixNQUFhLGNBQWUsU0FBUSx1Q0FBa0I7SUFPcEQsS0FBSyxDQUFDLFFBQVEsQ0FBQyxJQUFnQjtRQUM3QixJQUFJLElBQUksQ0FBQyxFQUFFLEVBQUU7WUFDWCxNQUFNLEtBQUssR0FBRyxNQUFNLElBQUksQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLEVBQUUsRUFBRSxFQUFFLElBQUksQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDO1lBQ3ZELElBQUksQ0FBQyxLQUFLO2dCQUFFLE9BQU87WUFDbkIsTUFBTSwrQkFBYyxDQUFDLGlCQUFpQixDQUFDLElBQUksRUFBRSxLQUFLLENBQUMsQ0FBQztTQUNyRDthQUFNO1lBQ0wsTUFBTSxLQUFLLEdBQUcsTUFBTSwrQkFBYyxDQUFDLG9CQUFvQixDQUFDLElBQUksRUFBRSxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUM7WUFDekUsSUFBSSxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsa0RBQWtELEVBQUUsS0FBSyxDQUFDLEVBQUUsRUFBRSxLQUFLLENBQUMsTUFBTSxDQUFDLENBQUM7U0FDOUY7SUFDSCxDQUFDO0lBRUQsS0FBSyxDQUFDLGNBQWMsQ0FBQyxJQUFZO1FBQy9CLE1BQU0sS0FBSyxHQUFHLE1BQU0sSUFBSSxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsRUFBRSxJQUFJLEVBQUUsQ0FBQyxDQUFDO1FBQ2hELElBQUksQ0FBQyxLQUFLO1lBQUUsT0FBTyxJQUFJLENBQUM7UUFDeEIsT0FBTywrQkFBYyxDQUFDLG9CQUFvQixDQUFDLEtBQUss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
91
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiVXNlclJlcG9zaXRvcnkuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9hcHAvcmVwb3NpdG9yeS9Vc2VyUmVwb3NpdG9yeS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7QUFBQSxzQ0FBZ0U7QUFDaEUsMERBQXVEO0FBR3ZELDhDQUF5RDtBQUN6RCxnREFBNEQ7QUFDNUQsNkRBQTBEO0FBSzFELElBQWEsY0FBYyxHQUEzQixNQUFhLGNBQWUsU0FBUSx1Q0FBa0I7SUFPcEQsS0FBSyxDQUFDLFFBQVEsQ0FBQyxJQUFnQjtRQUM3QixJQUFJLElBQUksQ0FBQyxFQUFFLEVBQUU7WUFDWCxNQUFNLEtBQUssR0FBRyxNQUFNLElBQUksQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLEVBQUUsRUFBRSxFQUFFLElBQUksQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDO1lBQ3ZELElBQUksQ0FBQyxLQUFLO2dCQUFFLE9BQU87WUFDbkIsTUFBTSwrQkFBYyxDQUFDLGlCQUFpQixDQUFDLElBQUksRUFBRSxLQUFLLENBQUMsQ0FBQztTQUNyRDthQUFNO1lBQ0wsTUFBTSxLQUFLLEdBQUcsTUFBTSwrQkFBYyxDQUFDLG9CQUFvQixDQUFDLElBQUksRUFBRSxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUM7WUFDekUsSUFBSSxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsa0RBQWtELEVBQUUsS0FBSyxDQUFDLEVBQUUsRUFBRSxLQUFLLENBQUMsTUFBTSxDQUFDLENBQUM7U0FDOUY7SUFDSCxDQUFDO0lBRUQsS0FBSyxDQUFDLGNBQWMsQ0FBQyxJQUFZO1FBQy9CLE1BQU0sS0FBSyxHQUFHLE1BQU0sSUFBSSxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsRUFBRSxJQUFJLEVBQUUsQ0FBQyxDQUFDO1FBQ2hELElBQUksQ0FBQyxLQUFLO1lBQUUsT0FBTyxJQUFJLENBQUM7UUFDeEIsT0FBTywrQkFBYyxDQUFDLG9CQUFvQixDQUFDLEtBQUss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
@@ -0,0 +1,15 @@
1
+ import { Bone } from 'leoric';
2
+ import { HookType } from '../../common/enum/Hook';
3
+ export declare class Hook extends Bone {
4
+ id: bigint;
5
+ createdAt: Date;
6
+ updatedAt: Date;
7
+ hookId: string;
8
+ type: HookType;
9
+ ownerId: string;
10
+ name: string;
11
+ endpoint: string;
12
+ secret: string;
13
+ latestTaskId: string;
14
+ enable: boolean;
15
+ }
@@ -0,0 +1,58 @@
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.Hook = void 0;
10
+ const tegg_orm_decorator_1 = require("@eggjs/tegg-orm-decorator");
11
+ const leoric_1 = require("leoric");
12
+ let Hook = class Hook extends leoric_1.Bone {
13
+ };
14
+ __decorate([
15
+ (0, tegg_orm_decorator_1.Attribute)(leoric_1.DataTypes.BIGINT, {
16
+ primary: true,
17
+ autoIncrement: true,
18
+ })
19
+ ], Hook.prototype, "id", void 0);
20
+ __decorate([
21
+ (0, tegg_orm_decorator_1.Attribute)(leoric_1.DataTypes.DATE, { name: 'gmt_create' })
22
+ ], Hook.prototype, "createdAt", void 0);
23
+ __decorate([
24
+ (0, tegg_orm_decorator_1.Attribute)(leoric_1.DataTypes.DATE, { name: 'gmt_modified' })
25
+ ], Hook.prototype, "updatedAt", void 0);
26
+ __decorate([
27
+ (0, tegg_orm_decorator_1.Attribute)(leoric_1.DataTypes.STRING(24), {
28
+ unique: true,
29
+ })
30
+ ], Hook.prototype, "hookId", void 0);
31
+ __decorate([
32
+ (0, tegg_orm_decorator_1.Attribute)(leoric_1.DataTypes.STRING(20))
33
+ ], Hook.prototype, "type", void 0);
34
+ __decorate([
35
+ (0, tegg_orm_decorator_1.Attribute)(leoric_1.DataTypes.STRING(24))
36
+ ], Hook.prototype, "ownerId", void 0);
37
+ __decorate([
38
+ (0, tegg_orm_decorator_1.Attribute)(leoric_1.DataTypes.STRING(428))
39
+ ], Hook.prototype, "name", void 0);
40
+ __decorate([
41
+ (0, tegg_orm_decorator_1.Attribute)(leoric_1.DataTypes.STRING(2048))
42
+ ], Hook.prototype, "endpoint", void 0);
43
+ __decorate([
44
+ (0, tegg_orm_decorator_1.Attribute)(leoric_1.DataTypes.STRING(200))
45
+ ], Hook.prototype, "secret", void 0);
46
+ __decorate([
47
+ (0, tegg_orm_decorator_1.Attribute)(leoric_1.DataTypes.STRING(24), {
48
+ allowNull: true,
49
+ })
50
+ ], Hook.prototype, "latestTaskId", void 0);
51
+ __decorate([
52
+ (0, tegg_orm_decorator_1.Attribute)(leoric_1.DataTypes.BOOLEAN)
53
+ ], Hook.prototype, "enable", void 0);
54
+ Hook = __decorate([
55
+ (0, tegg_orm_decorator_1.Model)()
56
+ ], Hook);
57
+ exports.Hook = Hook;
58
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiSG9vay5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL2FwcC9yZXBvc2l0b3J5L21vZGVsL0hvb2sudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7O0FBQUEsa0VBQTZEO0FBQzdELG1DQUF5QztBQUl6QyxJQUFhLElBQUksR0FBakIsTUFBYSxJQUFLLFNBQVEsYUFBSTtDQXlDN0IsQ0FBQTtBQXBDQztJQUpDLElBQUEsOEJBQVMsRUFBQyxrQkFBUyxDQUFDLE1BQU0sRUFBRTtRQUMzQixPQUFPLEVBQUUsSUFBSTtRQUNiLGFBQWEsRUFBRSxJQUFJO0tBQ3BCLENBQUM7Z0NBQ1M7QUFJWDtJQURDLElBQUEsOEJBQVMsRUFBQyxrQkFBUyxDQUFDLElBQUksRUFBRSxFQUFFLElBQUksRUFBRSxZQUFZLEVBQUUsQ0FBQzt1Q0FDbEM7QUFHaEI7SUFEQyxJQUFBLDhCQUFTLEVBQUMsa0JBQVMsQ0FBQyxJQUFJLEVBQUUsRUFBRSxJQUFJLEVBQUUsY0FBYyxFQUFFLENBQUM7dUNBQ3BDO0FBS2hCO0lBSEMsSUFBQSw4QkFBUyxFQUFDLGtCQUFTLENBQUMsTUFBTSxDQUFDLEVBQUUsQ0FBQyxFQUFFO1FBQy9CLE1BQU0sRUFBRSxJQUFJO0tBQ2IsQ0FBQztvQ0FDYTtBQUdmO0lBREMsSUFBQSw4QkFBUyxFQUFDLGtCQUFTLENBQUMsTUFBTSxDQUFDLEVBQUUsQ0FBQyxDQUFDO2tDQUNqQjtBQUdmO0lBREMsSUFBQSw4QkFBUyxFQUFDLGtCQUFTLENBQUMsTUFBTSxDQUFDLEVBQUUsQ0FBQyxDQUFDO3FDQUNoQjtBQUdoQjtJQURDLElBQUEsOEJBQVMsRUFBQyxrQkFBUyxDQUFDLE1BQU0sQ0FBQyxHQUFHLENBQUMsQ0FBQztrQ0FDcEI7QUFHYjtJQURDLElBQUEsOEJBQVMsRUFBQyxrQkFBUyxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsQ0FBQztzQ0FDakI7QUFHakI7SUFEQyxJQUFBLDhCQUFTLEVBQUMsa0JBQVMsQ0FBQyxNQUFNLENBQUMsR0FBRyxDQUFDLENBQUM7b0NBQ2xCO0FBS2Y7SUFIQyxJQUFBLDhCQUFTLEVBQUMsa0JBQVMsQ0FBQyxNQUFNLENBQUMsRUFBRSxDQUFDLEVBQUU7UUFDL0IsU0FBUyxFQUFFLElBQUk7S0FDaEIsQ0FBQzswQ0FDbUI7QUFHckI7SUFEQyxJQUFBLDhCQUFTLEVBQUMsa0JBQVMsQ0FBQyxPQUFPLENBQUM7b0NBQ2I7QUF4Q0wsSUFBSTtJQURoQixJQUFBLDBCQUFLLEdBQUU7R0FDSyxJQUFJLENBeUNoQjtBQXpDWSxvQkFBSSJ9
@@ -4,6 +4,7 @@ export declare class Package extends Bone {
4
4
  createdAt: Date;
5
5
  updatedAt: Date;
6
6
  packageId: string;
7
+ registryId: string;
7
8
  scope: string;
8
9
  name: string;
9
10
  isPrivate: boolean;
@@ -29,6 +29,9 @@ __decorate([
29
29
  unique: true,
30
30
  })
31
31
  ], Package.prototype, "packageId", void 0);
32
+ __decorate([
33
+ (0, tegg_orm_decorator_1.Attribute)(leoric_1.DataTypes.STRING(24))
34
+ ], Package.prototype, "registryId", void 0);
32
35
  __decorate([
33
36
  (0, tegg_orm_decorator_1.Attribute)(leoric_1.DataTypes.STRING(214))
34
37
  ], Package.prototype, "scope", void 0);
@@ -53,4 +56,4 @@ Package = __decorate([
53
56
  (0, tegg_orm_decorator_1.Model)()
54
57
  ], Package);
55
58
  exports.Package = Package;
56
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiUGFja2FnZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL2FwcC9yZXBvc2l0b3J5L21vZGVsL1BhY2thZ2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7O0FBQUEsa0VBQTZEO0FBQzdELG1DQUF5QztBQUN6QywyREFBd0Q7QUFHeEQsSUFBYSxPQUFPLEdBQXBCLE1BQWEsT0FBUSxTQUFRLGFBQUk7Q0EyQ2hDLENBQUE7QUF0Q0M7SUFKQyxJQUFBLDhCQUFTLEVBQUMsa0JBQVMsQ0FBQyxNQUFNLEVBQUU7UUFDM0IsT0FBTyxFQUFFLElBQUk7UUFDYixhQUFhLEVBQUUsSUFBSTtLQUNwQixDQUFDO21DQUNTO0FBR1g7SUFEQyxJQUFBLDhCQUFTLEVBQUMsa0JBQVMsQ0FBQyxJQUFJLEVBQUUsRUFBRSxJQUFJLEVBQUUsWUFBWSxFQUFFLENBQUM7MENBQ2xDO0FBR2hCO0lBREMsSUFBQSw4QkFBUyxFQUFDLGtCQUFTLENBQUMsSUFBSSxFQUFFLEVBQUUsSUFBSSxFQUFFLGNBQWMsRUFBRSxDQUFDOzBDQUNwQztBQUtoQjtJQUhDLElBQUEsOEJBQVMsRUFBQyxrQkFBUyxDQUFDLE1BQU0sQ0FBQyxFQUFFLENBQUMsRUFBRTtRQUMvQixNQUFNLEVBQUUsSUFBSTtLQUNiLENBQUM7MENBQ2dCO0FBR2xCO0lBREMsSUFBQSw4QkFBUyxFQUFDLGtCQUFTLENBQUMsTUFBTSxDQUFDLEdBQUcsQ0FBQyxDQUFDO3NDQUNuQjtBQU1kO0lBREMsSUFBQSw4QkFBUyxFQUFDLGtCQUFTLENBQUMsTUFBTSxDQUFDLEdBQUcsQ0FBQyxDQUFDO3FDQUNwQjtBQUliO0lBREMsSUFBQSw4QkFBUyxFQUFDLGtCQUFTLENBQUMsT0FBTyxDQUFDOzBDQUNWO0FBR25CO0lBREMsSUFBQSw4QkFBUyxFQUFDLGtCQUFTLENBQUMsTUFBTSxDQUFDLEtBQUssQ0FBQyxDQUFDOzRDQUNmO0FBS3BCO0lBRkMsSUFBQSwrQkFBYyxFQUFDLHlCQUF5QixDQUFDO0lBQ3pDLElBQUEsOEJBQVMsRUFBQyxrQkFBUyxDQUFDLE1BQU0sQ0FBQyxFQUFFLENBQUMsRUFBRSxFQUFFLFNBQVMsRUFBRSxJQUFJLEVBQUUsQ0FBQzttREFDMUI7QUFLM0I7SUFGQyxJQUFBLCtCQUFjLEVBQUMsc0JBQXNCLENBQUM7SUFDdEMsSUFBQSw4QkFBUyxFQUFDLGtCQUFTLENBQUMsTUFBTSxDQUFDLEVBQUUsQ0FBQyxFQUFFLEVBQUUsU0FBUyxFQUFFLElBQUksRUFBRSxDQUFDO2dEQUM3QjtBQTFDYixPQUFPO0lBRG5CLElBQUEsMEJBQUssR0FBRTtHQUNLLE9BQU8sQ0EyQ25CO0FBM0NZLDBCQUFPIn0=
59
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiUGFja2FnZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL2FwcC9yZXBvc2l0b3J5L21vZGVsL1BhY2thZ2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7O0FBQUEsa0VBQTZEO0FBQzdELG1DQUF5QztBQUN6QywyREFBd0Q7QUFHeEQsSUFBYSxPQUFPLEdBQXBCLE1BQWEsT0FBUSxTQUFRLGFBQUk7Q0E4Q2hDLENBQUE7QUF6Q0M7SUFKQyxJQUFBLDhCQUFTLEVBQUMsa0JBQVMsQ0FBQyxNQUFNLEVBQUU7UUFDM0IsT0FBTyxFQUFFLElBQUk7UUFDYixhQUFhLEVBQUUsSUFBSTtLQUNwQixDQUFDO21DQUNTO0FBR1g7SUFEQyxJQUFBLDhCQUFTLEVBQUMsa0JBQVMsQ0FBQyxJQUFJLEVBQUUsRUFBRSxJQUFJLEVBQUUsWUFBWSxFQUFFLENBQUM7MENBQ2xDO0FBR2hCO0lBREMsSUFBQSw4QkFBUyxFQUFDLGtCQUFTLENBQUMsSUFBSSxFQUFFLEVBQUUsSUFBSSxFQUFFLGNBQWMsRUFBRSxDQUFDOzBDQUNwQztBQUtoQjtJQUhDLElBQUEsOEJBQVMsRUFBQyxrQkFBUyxDQUFDLE1BQU0sQ0FBQyxFQUFFLENBQUMsRUFBRTtRQUMvQixNQUFNLEVBQUUsSUFBSTtLQUNiLENBQUM7MENBQ2dCO0FBR2xCO0lBREMsSUFBQSw4QkFBUyxFQUFDLGtCQUFTLENBQUMsTUFBTSxDQUFDLEVBQUUsQ0FBQyxDQUFDOzJDQUNiO0FBR25CO0lBREMsSUFBQSw4QkFBUyxFQUFDLGtCQUFTLENBQUMsTUFBTSxDQUFDLEdBQUcsQ0FBQyxDQUFDO3NDQUNuQjtBQU1kO0lBREMsSUFBQSw4QkFBUyxFQUFDLGtCQUFTLENBQUMsTUFBTSxDQUFDLEdBQUcsQ0FBQyxDQUFDO3FDQUNwQjtBQUliO0lBREMsSUFBQSw4QkFBUyxFQUFDLGtCQUFTLENBQUMsT0FBTyxDQUFDOzBDQUNWO0FBR25CO0lBREMsSUFBQSw4QkFBUyxFQUFDLGtCQUFTLENBQUMsTUFBTSxDQUFDLEtBQUssQ0FBQyxDQUFDOzRDQUNmO0FBS3BCO0lBRkMsSUFBQSwrQkFBYyxFQUFDLHlCQUF5QixDQUFDO0lBQ3pDLElBQUEsOEJBQVMsRUFBQyxrQkFBUyxDQUFDLE1BQU0sQ0FBQyxFQUFFLENBQUMsRUFBRSxFQUFFLFNBQVMsRUFBRSxJQUFJLEVBQUUsQ0FBQzttREFDMUI7QUFLM0I7SUFGQyxJQUFBLCtCQUFjLEVBQUMsc0JBQXNCLENBQUM7SUFDdEMsSUFBQSw4QkFBUyxFQUFDLGtCQUFTLENBQUMsTUFBTSxDQUFDLEVBQUUsQ0FBQyxFQUFFLEVBQUUsU0FBUyxFQUFFLElBQUksRUFBRSxDQUFDO2dEQUM3QjtBQTdDYixPQUFPO0lBRG5CLElBQUEsMEJBQUssR0FBRTtHQUNLLE9BQU8sQ0E4Q25CO0FBOUNZLDBCQUFPIn0=
@@ -0,0 +1,13 @@
1
+ import { RegistryType } from '../../common/enum/Registry';
2
+ import { Bone } from 'leoric';
3
+ export declare class Registry extends Bone {
4
+ id: bigint;
5
+ createdAt: Date;
6
+ updatedAt: Date;
7
+ registryId: string;
8
+ name: string;
9
+ host: string;
10
+ changeStream: string;
11
+ userPrefix: string;
12
+ type: RegistryType;
13
+ }
@@ -0,0 +1,50 @@
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.Registry = void 0;
10
+ const tegg_orm_decorator_1 = require("@eggjs/tegg-orm-decorator");
11
+ const leoric_1 = require("leoric");
12
+ let Registry = class Registry extends leoric_1.Bone {
13
+ };
14
+ __decorate([
15
+ (0, tegg_orm_decorator_1.Attribute)(leoric_1.DataTypes.BIGINT, {
16
+ primary: true,
17
+ autoIncrement: true,
18
+ })
19
+ ], Registry.prototype, "id", void 0);
20
+ __decorate([
21
+ (0, tegg_orm_decorator_1.Attribute)(leoric_1.DataTypes.DATE, { name: 'gmt_create' })
22
+ ], Registry.prototype, "createdAt", void 0);
23
+ __decorate([
24
+ (0, tegg_orm_decorator_1.Attribute)(leoric_1.DataTypes.DATE, { name: 'gmt_modified' })
25
+ ], Registry.prototype, "updatedAt", void 0);
26
+ __decorate([
27
+ (0, tegg_orm_decorator_1.Attribute)(leoric_1.DataTypes.STRING(24), {
28
+ unique: true,
29
+ })
30
+ ], Registry.prototype, "registryId", void 0);
31
+ __decorate([
32
+ (0, tegg_orm_decorator_1.Attribute)(leoric_1.DataTypes.STRING(256))
33
+ ], Registry.prototype, "name", void 0);
34
+ __decorate([
35
+ (0, tegg_orm_decorator_1.Attribute)(leoric_1.DataTypes.STRING(4096))
36
+ ], Registry.prototype, "host", void 0);
37
+ __decorate([
38
+ (0, tegg_orm_decorator_1.Attribute)(leoric_1.DataTypes.STRING(4096), { name: 'change_stream' })
39
+ ], Registry.prototype, "changeStream", void 0);
40
+ __decorate([
41
+ (0, tegg_orm_decorator_1.Attribute)(leoric_1.DataTypes.STRING(4096), { name: 'user_prefix' })
42
+ ], Registry.prototype, "userPrefix", void 0);
43
+ __decorate([
44
+ (0, tegg_orm_decorator_1.Attribute)(leoric_1.DataTypes.STRING(256))
45
+ ], Registry.prototype, "type", void 0);
46
+ Registry = __decorate([
47
+ (0, tegg_orm_decorator_1.Model)()
48
+ ], Registry);
49
+ exports.Registry = Registry;
50
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiUmVnaXN0cnkuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9hcHAvcmVwb3NpdG9yeS9tb2RlbC9SZWdpc3RyeS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7QUFBQSxrRUFBNkQ7QUFFN0QsbUNBQXlDO0FBR3pDLElBQWEsUUFBUSxHQUFyQixNQUFhLFFBQVMsU0FBUSxhQUFJO0NBaUNqQyxDQUFBO0FBNUJDO0lBSkMsSUFBQSw4QkFBUyxFQUFDLGtCQUFTLENBQUMsTUFBTSxFQUFFO1FBQzNCLE9BQU8sRUFBRSxJQUFJO1FBQ2IsYUFBYSxFQUFFLElBQUk7S0FDcEIsQ0FBQztvQ0FDUztBQUdYO0lBREMsSUFBQSw4QkFBUyxFQUFDLGtCQUFTLENBQUMsSUFBSSxFQUFFLEVBQUUsSUFBSSxFQUFFLFlBQVksRUFBRSxDQUFDOzJDQUNsQztBQUdoQjtJQURDLElBQUEsOEJBQVMsRUFBQyxrQkFBUyxDQUFDLElBQUksRUFBRSxFQUFFLElBQUksRUFBRSxjQUFjLEVBQUUsQ0FBQzsyQ0FDcEM7QUFLaEI7SUFIQyxJQUFBLDhCQUFTLEVBQUMsa0JBQVMsQ0FBQyxNQUFNLENBQUMsRUFBRSxDQUFDLEVBQUU7UUFDL0IsTUFBTSxFQUFFLElBQUk7S0FDYixDQUFDOzRDQUNpQjtBQUduQjtJQURDLElBQUEsOEJBQVMsRUFBQyxrQkFBUyxDQUFDLE1BQU0sQ0FBQyxHQUFHLENBQUMsQ0FBQztzQ0FDcEI7QUFHYjtJQURDLElBQUEsOEJBQVMsRUFBQyxrQkFBUyxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsQ0FBQztzQ0FDckI7QUFHYjtJQURDLElBQUEsOEJBQVMsRUFBQyxrQkFBUyxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsRUFBRSxFQUFFLElBQUksRUFBRSxlQUFlLEVBQUUsQ0FBQzs4Q0FDeEM7QUFHckI7SUFEQyxJQUFBLDhCQUFTLEVBQUMsa0JBQVMsQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLEVBQUUsRUFBRSxJQUFJLEVBQUUsYUFBYSxFQUFFLENBQUM7NENBQ3hDO0FBR25CO0lBREMsSUFBQSw4QkFBUyxFQUFDLGtCQUFTLENBQUMsTUFBTSxDQUFDLEdBQUcsQ0FBQyxDQUFDO3NDQUNkO0FBL0JSLFFBQVE7SUFEcEIsSUFBQSwwQkFBSyxHQUFFO0dBQ0ssUUFBUSxDQWlDcEI7QUFqQ1ksNEJBQVEifQ==
@@ -0,0 +1,9 @@
1
+ import { Bone } from 'leoric';
2
+ export declare class Scope extends Bone {
3
+ id: bigint;
4
+ createdAt: Date;
5
+ updatedAt: Date;
6
+ name: string;
7
+ registryId: string;
8
+ scopeId: string;
9
+ }
@@ -0,0 +1,39 @@
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.Scope = void 0;
10
+ const tegg_orm_decorator_1 = require("@eggjs/tegg-orm-decorator");
11
+ const leoric_1 = require("leoric");
12
+ let Scope = class Scope extends leoric_1.Bone {
13
+ };
14
+ __decorate([
15
+ (0, tegg_orm_decorator_1.Attribute)(leoric_1.DataTypes.BIGINT, {
16
+ primary: true,
17
+ autoIncrement: true,
18
+ })
19
+ ], Scope.prototype, "id", void 0);
20
+ __decorate([
21
+ (0, tegg_orm_decorator_1.Attribute)(leoric_1.DataTypes.DATE, { name: 'gmt_create' })
22
+ ], Scope.prototype, "createdAt", void 0);
23
+ __decorate([
24
+ (0, tegg_orm_decorator_1.Attribute)(leoric_1.DataTypes.DATE, { name: 'gmt_modified' })
25
+ ], Scope.prototype, "updatedAt", void 0);
26
+ __decorate([
27
+ (0, tegg_orm_decorator_1.Attribute)(leoric_1.DataTypes.STRING(214))
28
+ ], Scope.prototype, "name", void 0);
29
+ __decorate([
30
+ (0, tegg_orm_decorator_1.Attribute)(leoric_1.DataTypes.STRING(256))
31
+ ], Scope.prototype, "registryId", void 0);
32
+ __decorate([
33
+ (0, tegg_orm_decorator_1.Attribute)(leoric_1.DataTypes.STRING(256))
34
+ ], Scope.prototype, "scopeId", void 0);
35
+ Scope = __decorate([
36
+ (0, tegg_orm_decorator_1.Model)()
37
+ ], Scope);
38
+ exports.Scope = Scope;
39
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiU2NvcGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9hcHAvcmVwb3NpdG9yeS9tb2RlbC9TY29wZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7QUFBQSxrRUFBNkQ7QUFDN0QsbUNBQXlDO0FBR3pDLElBQWEsS0FBSyxHQUFsQixNQUFhLEtBQU0sU0FBUSxhQUFJO0NBcUI5QixDQUFBO0FBaEJDO0lBSkMsSUFBQSw4QkFBUyxFQUFDLGtCQUFTLENBQUMsTUFBTSxFQUFFO1FBQzNCLE9BQU8sRUFBRSxJQUFJO1FBQ2IsYUFBYSxFQUFFLElBQUk7S0FDcEIsQ0FBQztpQ0FDUztBQUdYO0lBREMsSUFBQSw4QkFBUyxFQUFDLGtCQUFTLENBQUMsSUFBSSxFQUFFLEVBQUUsSUFBSSxFQUFFLFlBQVksRUFBRSxDQUFDO3dDQUNsQztBQUdoQjtJQURDLElBQUEsOEJBQVMsRUFBQyxrQkFBUyxDQUFDLElBQUksRUFBRSxFQUFFLElBQUksRUFBRSxjQUFjLEVBQUUsQ0FBQzt3Q0FDcEM7QUFHaEI7SUFEQyxJQUFBLDhCQUFTLEVBQUMsa0JBQVMsQ0FBQyxNQUFNLENBQUMsR0FBRyxDQUFDLENBQUM7bUNBQ3BCO0FBR2I7SUFEQyxJQUFBLDhCQUFTLEVBQUMsa0JBQVMsQ0FBQyxNQUFNLENBQUMsR0FBRyxDQUFDLENBQUM7eUNBQ2Q7QUFHbkI7SUFEQyxJQUFBLDhCQUFTLEVBQUMsa0JBQVMsQ0FBQyxNQUFNLENBQUMsR0FBRyxDQUFDLENBQUM7c0NBQ2pCO0FBcEJMLEtBQUs7SUFEakIsSUFBQSwwQkFBSyxHQUFFO0dBQ0ssS0FBSyxDQXFCakI7QUFyQlksc0JBQUsifQ==
@@ -15,4 +15,5 @@ export declare class Task extends Bone {
15
15
  logStorePosition: string;
16
16
  attempts: number;
17
17
  error: string;
18
+ bizId: string;
18
19
  }
@@ -58,8 +58,13 @@ __decorate([
58
58
  __decorate([
59
59
  (0, tegg_orm_decorator_1.Attribute)(leoric_1.DataTypes.TEXT('long'))
60
60
  ], Task.prototype, "error", void 0);
61
+ __decorate([
62
+ (0, tegg_orm_decorator_1.Attribute)(leoric_1.DataTypes.STRING(48), {
63
+ unique: true,
64
+ })
65
+ ], Task.prototype, "bizId", void 0);
61
66
  Task = __decorate([
62
67
  (0, tegg_orm_decorator_1.Model)()
63
68
  ], Task);
64
69
  exports.Task = Task;
65
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiVGFzay5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL2FwcC9yZXBvc2l0b3J5L21vZGVsL1Rhc2sudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7O0FBQUEsa0VBQTZEO0FBQzdELG1DQUF5QztBQUl6QyxJQUFhLElBQUksR0FBakIsTUFBYSxJQUFLLFNBQVEsYUFBSTtDQStDN0IsQ0FBQTtBQTFDQztJQUpDLElBQUEsOEJBQVMsRUFBQyxrQkFBUyxDQUFDLE1BQU0sRUFBRTtRQUMzQixPQUFPLEVBQUUsSUFBSTtRQUNiLGFBQWEsRUFBRSxJQUFJO0tBQ3BCLENBQUM7Z0NBQ1M7QUFHWDtJQURDLElBQUEsOEJBQVMsRUFBQyxrQkFBUyxDQUFDLElBQUksRUFBRSxFQUFFLElBQUksRUFBRSxZQUFZLEVBQUUsQ0FBQzt1Q0FDbEM7QUFHaEI7SUFEQyxJQUFBLDhCQUFTLEVBQUMsa0JBQVMsQ0FBQyxJQUFJLEVBQUUsRUFBRSxJQUFJLEVBQUUsY0FBYyxFQUFFLENBQUM7dUNBQ3BDO0FBS2hCO0lBSEMsSUFBQSw4QkFBUyxFQUFDLGtCQUFTLENBQUMsTUFBTSxDQUFDLEVBQUUsQ0FBQyxFQUFFO1FBQy9CLE1BQU0sRUFBRSxJQUFJO0tBQ2IsQ0FBQztvQ0FDYTtBQUdmO0lBREMsSUFBQSw4QkFBUyxFQUFDLGtCQUFTLENBQUMsTUFBTSxDQUFDLEVBQUUsQ0FBQyxDQUFDO2tDQUNqQjtBQUdmO0lBREMsSUFBQSw4QkFBUyxFQUFDLGtCQUFTLENBQUMsTUFBTSxDQUFDLEVBQUUsQ0FBQyxDQUFDO21DQUNmO0FBR2pCO0lBREMsSUFBQSw4QkFBUyxFQUFDLGtCQUFTLENBQUMsTUFBTSxDQUFDLEdBQUcsQ0FBQyxDQUFDO3dDQUNkO0FBR25CO0lBREMsSUFBQSw4QkFBUyxFQUFDLGtCQUFTLENBQUMsTUFBTSxDQUFDLEVBQUUsQ0FBQyxDQUFDO3NDQUNmO0FBR2pCO0lBREMsSUFBQSw4QkFBUyxFQUFDLGtCQUFTLENBQUMsTUFBTSxDQUFDLEdBQUcsQ0FBQyxDQUFDO3NDQUNoQjtBQUdqQjtJQURDLElBQUEsOEJBQVMsRUFBQyxrQkFBUyxDQUFDLEtBQUssQ0FBQztrQ0FDakI7QUFHVjtJQURDLElBQUEsOEJBQVMsRUFBQyxrQkFBUyxDQUFDLE1BQU0sQ0FBQyxHQUFHLENBQUMsQ0FBQztxQ0FDakI7QUFHaEI7SUFEQyxJQUFBLDhCQUFTLEVBQUMsa0JBQVMsQ0FBQyxNQUFNLENBQUMsRUFBRSxDQUFDLENBQUM7OENBQ1A7QUFHekI7SUFEQyxJQUFBLDhCQUFTLEVBQUMsa0JBQVMsQ0FBQyxPQUFPLENBQUM7c0NBQ1o7QUFHakI7SUFEQyxJQUFBLDhCQUFTLEVBQUMsa0JBQVMsQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLENBQUM7bUNBQ3BCO0FBOUNILElBQUk7SUFEaEIsSUFBQSwwQkFBSyxHQUFFO0dBQ0ssSUFBSSxDQStDaEI7QUEvQ1ksb0JBQUkifQ==
70
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiVGFzay5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL2FwcC9yZXBvc2l0b3J5L21vZGVsL1Rhc2sudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7O0FBQUEsa0VBQTZEO0FBQzdELG1DQUF5QztBQUl6QyxJQUFhLElBQUksR0FBakIsTUFBYSxJQUFLLFNBQVEsYUFBSTtDQW9EN0IsQ0FBQTtBQS9DQztJQUpDLElBQUEsOEJBQVMsRUFBQyxrQkFBUyxDQUFDLE1BQU0sRUFBRTtRQUMzQixPQUFPLEVBQUUsSUFBSTtRQUNiLGFBQWEsRUFBRSxJQUFJO0tBQ3BCLENBQUM7Z0NBQ1M7QUFHWDtJQURDLElBQUEsOEJBQVMsRUFBQyxrQkFBUyxDQUFDLElBQUksRUFBRSxFQUFFLElBQUksRUFBRSxZQUFZLEVBQUUsQ0FBQzt1Q0FDbEM7QUFHaEI7SUFEQyxJQUFBLDhCQUFTLEVBQUMsa0JBQVMsQ0FBQyxJQUFJLEVBQUUsRUFBRSxJQUFJLEVBQUUsY0FBYyxFQUFFLENBQUM7dUNBQ3BDO0FBS2hCO0lBSEMsSUFBQSw4QkFBUyxFQUFDLGtCQUFTLENBQUMsTUFBTSxDQUFDLEVBQUUsQ0FBQyxFQUFFO1FBQy9CLE1BQU0sRUFBRSxJQUFJO0tBQ2IsQ0FBQztvQ0FDYTtBQUdmO0lBREMsSUFBQSw4QkFBUyxFQUFDLGtCQUFTLENBQUMsTUFBTSxDQUFDLEVBQUUsQ0FBQyxDQUFDO2tDQUNqQjtBQUdmO0lBREMsSUFBQSw4QkFBUyxFQUFDLGtCQUFTLENBQUMsTUFBTSxDQUFDLEVBQUUsQ0FBQyxDQUFDO21DQUNmO0FBR2pCO0lBREMsSUFBQSw4QkFBUyxFQUFDLGtCQUFTLENBQUMsTUFBTSxDQUFDLEdBQUcsQ0FBQyxDQUFDO3dDQUNkO0FBR25CO0lBREMsSUFBQSw4QkFBUyxFQUFDLGtCQUFTLENBQUMsTUFBTSxDQUFDLEVBQUUsQ0FBQyxDQUFDO3NDQUNmO0FBR2pCO0lBREMsSUFBQSw4QkFBUyxFQUFDLGtCQUFTLENBQUMsTUFBTSxDQUFDLEdBQUcsQ0FBQyxDQUFDO3NDQUNoQjtBQUdqQjtJQURDLElBQUEsOEJBQVMsRUFBQyxrQkFBUyxDQUFDLEtBQUssQ0FBQztrQ0FDakI7QUFHVjtJQURDLElBQUEsOEJBQVMsRUFBQyxrQkFBUyxDQUFDLE1BQU0sQ0FBQyxHQUFHLENBQUMsQ0FBQztxQ0FDakI7QUFHaEI7SUFEQyxJQUFBLDhCQUFTLEVBQUMsa0JBQVMsQ0FBQyxNQUFNLENBQUMsRUFBRSxDQUFDLENBQUM7OENBQ1A7QUFHekI7SUFEQyxJQUFBLDhCQUFTLEVBQUMsa0JBQVMsQ0FBQyxPQUFPLENBQUM7c0NBQ1o7QUFHakI7SUFEQyxJQUFBLDhCQUFTLEVBQUMsa0JBQVMsQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLENBQUM7bUNBQ3BCO0FBS2Q7SUFIQyxJQUFBLDhCQUFTLEVBQUMsa0JBQVMsQ0FBQyxNQUFNLENBQUMsRUFBRSxDQUFDLEVBQUU7UUFDL0IsTUFBTSxFQUFFLElBQUk7S0FDYixDQUFDO21DQUNZO0FBbkRILElBQUk7SUFEaEIsSUFBQSwwQkFBSyxHQUFFO0dBQ0ssSUFBSSxDQW9EaEI7QUFwRFksb0JBQUkifQ==
@@ -0,0 +1,8 @@
1
+ import { Subscription } from 'egg';
2
+ export default class CreateTriggerHookWorker extends Subscription {
3
+ static get schedule(): {
4
+ interval: number;
5
+ type: string;
6
+ };
7
+ subscribe(): Promise<void>;
8
+ }
@@ -0,0 +1,51 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ const egg_1 = require("egg");
4
+ const TaskService_1 = require("../core/service/TaskService");
5
+ const Task_1 = require("../common/enum/Task");
6
+ const CreateHookTriggerService_1 = require("../core/service/CreateHookTriggerService");
7
+ let executingCount = 0;
8
+ class CreateTriggerHookWorker extends egg_1.Subscription {
9
+ static get schedule() {
10
+ return {
11
+ interval: 1000,
12
+ type: 'all',
13
+ };
14
+ }
15
+ async subscribe() {
16
+ const { ctx, app } = this;
17
+ if (!app.config.cnpmcore.hookEnable)
18
+ return;
19
+ if (executingCount >= app.config.cnpmcore.createTriggerHookWorkerMaxConcurrentTasks)
20
+ return;
21
+ await ctx.beginModuleScope(async () => {
22
+ const createHookTriggerService = await ctx.getEggObject(CreateHookTriggerService_1.CreateHookTriggerService);
23
+ const taskService = await ctx.getEggObject(TaskService_1.TaskService);
24
+ executingCount++;
25
+ try {
26
+ let task = await taskService.findExecuteTask(Task_1.TaskType.CreateHook);
27
+ while (task) {
28
+ const startTime = Date.now();
29
+ ctx.logger.info('[CreateTriggerHookWorker: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 createHookTriggerService.executeTask(task);
31
+ const use = Date.now() - startTime;
32
+ ctx.logger.info('[CreateTriggerHookWorker:subscribe:executeTask:success][%s] taskId: %s, targetName: %s, use %sms', executingCount, task.taskId, task.targetName, use);
33
+ if (executingCount >= app.config.cnpmcore.createTriggerHookWorkerMaxConcurrentTasks) {
34
+ ctx.logger.info('[CreateTriggerHookWorker:subscribe:executeTask] current sync task count %s, exceed max concurrent tasks %s', executingCount, app.config.cnpmcore.createTriggerHookWorkerMaxConcurrentTasks);
35
+ break;
36
+ }
37
+ // try next task
38
+ task = await taskService.findExecuteTask(Task_1.TaskType.CreateHook);
39
+ }
40
+ }
41
+ catch (err) {
42
+ ctx.logger.error('[TriggerHookWorker:subscribe:executeTask:error][%s] %s', executingCount, err);
43
+ }
44
+ finally {
45
+ executingCount--;
46
+ }
47
+ });
48
+ }
49
+ }
50
+ exports.default = CreateTriggerHookWorker;
51
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiQ3JlYXRlVHJpZ2dlckhvb2tXb3JrZXIuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9hcHAvc2NoZWR1bGUvQ3JlYXRlVHJpZ2dlckhvb2tXb3JrZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7QUFBQSw2QkFBbUM7QUFDbkMsNkRBQTBEO0FBQzFELDhDQUErQztBQUUvQyx1RkFBb0Y7QUFFcEYsSUFBSSxjQUFjLEdBQUcsQ0FBQyxDQUFDO0FBQ3ZCLE1BQXFCLHVCQUF3QixTQUFRLGtCQUFZO0lBQy9ELE1BQU0sS0FBSyxRQUFRO1FBQ2pCLE9BQU87WUFDTCxRQUFRLEVBQUUsSUFBSTtZQUNkLElBQUksRUFBRSxLQUFLO1NBQ1osQ0FBQztJQUNKLENBQUM7SUFFRCxLQUFLLENBQUMsU0FBUztRQUNiLE1BQU0sRUFBRSxHQUFHLEVBQUUsR0FBRyxFQUFFLEdBQUcsSUFBSSxDQUFDO1FBQzFCLElBQUksQ0FBQyxHQUFHLENBQUMsTUFBTSxDQUFDLFFBQVEsQ0FBQyxVQUFVO1lBQUUsT0FBTztRQUM1QyxJQUFJLGNBQWMsSUFBSSxHQUFHLENBQUMsTUFBTSxDQUFDLFFBQVEsQ0FBQyx5Q0FBeUM7WUFBRSxPQUFPO1FBRTVGLE1BQU0sR0FBRyxDQUFDLGdCQUFnQixDQUFDLEtBQUssSUFBSSxFQUFFO1lBQ3BDLE1BQU0sd0JBQXdCLEdBQUcsTUFBTSxHQUFHLENBQUMsWUFBWSxDQUFDLG1EQUF3QixDQUFDLENBQUM7WUFDbEYsTUFBTSxXQUFXLEdBQUcsTUFBTSxHQUFHLENBQUMsWUFBWSxDQUFDLHlCQUFXLENBQUMsQ0FBQztZQUN4RCxjQUFjLEVBQUUsQ0FBQztZQUNqQixJQUFJO2dCQUNGLElBQUksSUFBSSxHQUFHLE1BQU0sV0FBVyxDQUFDLGVBQWUsQ0FBQyxlQUFRLENBQUMsVUFBVSxDQUFtQixDQUFDO2dCQUNwRixPQUFPLElBQUksRUFBRTtvQkFDWCxNQUFNLFNBQVMsR0FBRyxJQUFJLENBQUMsR0FBRyxFQUFFLENBQUM7b0JBQzdCLEdBQUcsQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLDJJQUEySSxFQUN6SixjQUFjLEVBQUUsSUFBSSxDQUFDLE1BQU0sRUFBRSxJQUFJLENBQUMsVUFBVSxFQUFFLElBQUksQ0FBQyxRQUFRLEVBQUUsSUFBSSxDQUFDLElBQUksRUFBRSxJQUFJLENBQUMsU0FBUyxFQUN0RixTQUFTLEdBQUcsSUFBSSxDQUFDLFNBQVMsQ0FBQyxPQUFPLEVBQUUsQ0FBQyxDQUFDO29CQUN4QyxNQUFNLHdCQUF3QixDQUFDLFdBQVcsQ0FBQyxJQUFJLENBQUMsQ0FBQztvQkFDakQsTUFBTSxHQUFHLEdBQUcsSUFBSSxDQUFDLEdBQUcsRUFBRSxHQUFHLFNBQVMsQ0FBQztvQkFDbkMsR0FBRyxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsa0dBQWtHLEVBQ2hILGNBQWMsRUFBRSxJQUFJLENBQUMsTUFBTSxFQUFFLElBQUksQ0FBQyxVQUFVLEVBQUUsR0FBRyxDQUFDLENBQUM7b0JBQ3JELElBQUksY0FBYyxJQUFJLEdBQUcsQ0FBQyxNQUFNLENBQUMsUUFBUSxDQUFDLHlDQUF5QyxFQUFFO3dCQUNuRixHQUFHLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyw0R0FBNEcsRUFDMUgsY0FBYyxFQUFFLEdBQUcsQ0FBQyxNQUFNLENBQUMsUUFBUSxDQUFDLHlDQUF5QyxDQUFDLENBQUM7d0JBQ2pGLE1BQU07cUJBQ1A7b0JBQ0QsZ0JBQWdCO29CQUNoQixJQUFJLEdBQUcsTUFBTSxXQUFXLENBQUMsZUFBZSxDQUFDLGVBQVEsQ0FBQyxVQUFVLENBQW1CLENBQUM7aUJBQ2pGO2FBQ0Y7WUFBQyxPQUFPLEdBQUcsRUFBRTtnQkFDWixHQUFHLENBQUMsTUFBTSxDQUFDLEtBQUssQ0FBQyx3REFBd0QsRUFBRSxjQUFjLEVBQUUsR0FBRyxDQUFDLENBQUM7YUFDakc7b0JBQVM7Z0JBQ1IsY0FBYyxFQUFFLENBQUM7YUFDbEI7UUFDSCxDQUFDLENBQUMsQ0FBQztJQUNMLENBQUM7Q0FDRjtBQTNDRCwwQ0EyQ0MifQ==
@@ -0,0 +1,8 @@
1
+ import { Subscription } from 'egg';
2
+ export default class TriggerHookWorker extends Subscription {
3
+ static get schedule(): {
4
+ interval: number;
5
+ type: string;
6
+ };
7
+ subscribe(): Promise<void>;
8
+ }
@@ -0,0 +1,49 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ const egg_1 = require("egg");
4
+ const HookTriggerService_1 = require("../core/service/HookTriggerService");
5
+ const TaskService_1 = require("../core/service/TaskService");
6
+ const Task_1 = require("../common/enum/Task");
7
+ let executingCount = 0;
8
+ class TriggerHookWorker extends egg_1.Subscription {
9
+ static get schedule() {
10
+ return {
11
+ interval: 1000,
12
+ type: 'all',
13
+ };
14
+ }
15
+ async subscribe() {
16
+ const { ctx, app } = this;
17
+ if (executingCount >= app.config.cnpmcore.triggerHookWorkerMaxConcurrentTasks)
18
+ return;
19
+ await ctx.beginModuleScope(async () => {
20
+ const hookTriggerService = await ctx.getEggObject(HookTriggerService_1.HookTriggerService);
21
+ const taskService = await ctx.getEggObject(TaskService_1.TaskService);
22
+ executingCount++;
23
+ try {
24
+ let task = await taskService.findExecuteTask(Task_1.TaskType.TriggerHook);
25
+ while (task) {
26
+ const startTime = Date.now();
27
+ ctx.logger.info('[TriggerHookWorker: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());
28
+ await hookTriggerService.executeTask(task);
29
+ const use = Date.now() - startTime;
30
+ ctx.logger.info('[TriggerHookWorker:subscribe:executeTask:success][%s] taskId: %s, targetName: %s, use %sms', executingCount, task.taskId, task.targetName, use);
31
+ if (executingCount >= app.config.cnpmcore.triggerHookWorkerMaxConcurrentTasks) {
32
+ ctx.logger.info('[TriggerHookWorker:subscribe:executeTask] current sync task count %s, exceed max concurrent tasks %s', executingCount, app.config.cnpmcore.triggerHookWorkerMaxConcurrentTasks);
33
+ break;
34
+ }
35
+ // try next task
36
+ task = await taskService.findExecuteTask(Task_1.TaskType.TriggerHook);
37
+ }
38
+ }
39
+ catch (err) {
40
+ ctx.logger.error('[TriggerHookWorker:subscribe:executeTask:error][%s] %s', executingCount, err);
41
+ }
42
+ finally {
43
+ executingCount--;
44
+ }
45
+ });
46
+ }
47
+ }
48
+ exports.default = TriggerHookWorker;
49
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiVHJpZ2dlckhvb2tXb3JrZXIuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9hcHAvc2NoZWR1bGUvVHJpZ2dlckhvb2tXb3JrZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7QUFBQSw2QkFBbUM7QUFDbkMsMkVBQXdFO0FBQ3hFLDZEQUEwRDtBQUMxRCw4Q0FBK0M7QUFHL0MsSUFBSSxjQUFjLEdBQUcsQ0FBQyxDQUFDO0FBQ3ZCLE1BQXFCLGlCQUFrQixTQUFRLGtCQUFZO0lBQ3pELE1BQU0sS0FBSyxRQUFRO1FBQ2pCLE9BQU87WUFDTCxRQUFRLEVBQUUsSUFBSTtZQUNkLElBQUksRUFBRSxLQUFLO1NBQ1osQ0FBQztJQUNKLENBQUM7SUFFRCxLQUFLLENBQUMsU0FBUztRQUNiLE1BQU0sRUFBRSxHQUFHLEVBQUUsR0FBRyxFQUFFLEdBQUcsSUFBSSxDQUFDO1FBQzFCLElBQUksY0FBYyxJQUFJLEdBQUcsQ0FBQyxNQUFNLENBQUMsUUFBUSxDQUFDLG1DQUFtQztZQUFFLE9BQU87UUFFdEYsTUFBTSxHQUFHLENBQUMsZ0JBQWdCLENBQUMsS0FBSyxJQUFJLEVBQUU7WUFDcEMsTUFBTSxrQkFBa0IsR0FBRyxNQUFNLEdBQUcsQ0FBQyxZQUFZLENBQUMsdUNBQWtCLENBQUMsQ0FBQztZQUN0RSxNQUFNLFdBQVcsR0FBRyxNQUFNLEdBQUcsQ0FBQyxZQUFZLENBQUMseUJBQVcsQ0FBQyxDQUFDO1lBQ3hELGNBQWMsRUFBRSxDQUFDO1lBQ2pCLElBQUk7Z0JBQ0YsSUFBSSxJQUFJLEdBQUcsTUFBTSxXQUFXLENBQUMsZUFBZSxDQUFDLGVBQVEsQ0FBQyxXQUFXLENBQW9CLENBQUM7Z0JBQ3RGLE9BQU8sSUFBSSxFQUFFO29CQUNYLE1BQU0sU0FBUyxHQUFHLElBQUksQ0FBQyxHQUFHLEVBQUUsQ0FBQztvQkFDN0IsR0FBRyxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMscUlBQXFJLEVBQ25KLGNBQWMsRUFBRSxJQUFJLENBQUMsTUFBTSxFQUFFLElBQUksQ0FBQyxVQUFVLEVBQUUsSUFBSSxDQUFDLFFBQVEsRUFBRSxJQUFJLENBQUMsSUFBSSxFQUFFLElBQUksQ0FBQyxTQUFTLEVBQ3RGLFNBQVMsR0FBRyxJQUFJLENBQUMsU0FBUyxDQUFDLE9BQU8sRUFBRSxDQUFDLENBQUM7b0JBQ3hDLE1BQU0sa0JBQWtCLENBQUMsV0FBVyxDQUFDLElBQUksQ0FBQyxDQUFDO29CQUMzQyxNQUFNLEdBQUcsR0FBRyxJQUFJLENBQUMsR0FBRyxFQUFFLEdBQUcsU0FBUyxDQUFDO29CQUNuQyxHQUFHLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyw0RkFBNEYsRUFDMUcsY0FBYyxFQUFFLElBQUksQ0FBQyxNQUFNLEVBQUUsSUFBSSxDQUFDLFVBQVUsRUFBRSxHQUFHLENBQUMsQ0FBQztvQkFDckQsSUFBSSxjQUFjLElBQUksR0FBRyxDQUFDLE1BQU0sQ0FBQyxRQUFRLENBQUMsbUNBQW1DLEVBQUU7d0JBQzdFLEdBQUcsQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLHNHQUFzRyxFQUNwSCxjQUFjLEVBQUUsR0FBRyxDQUFDLE1BQU0sQ0FBQyxRQUFRLENBQUMsbUNBQW1DLENBQUMsQ0FBQzt3QkFDM0UsTUFBTTtxQkFDUDtvQkFDRCxnQkFBZ0I7b0JBQ2hCLElBQUksR0FBRyxNQUFNLFdBQVcsQ0FBQyxlQUFlLENBQUMsZUFBUSxDQUFDLFdBQVcsQ0FBb0IsQ0FBQztpQkFDbkY7YUFDRjtZQUFDLE9BQU8sR0FBRyxFQUFFO2dCQUNaLEdBQUcsQ0FBQyxNQUFNLENBQUMsS0FBSyxDQUFDLHdEQUF3RCxFQUFFLGNBQWMsRUFBRSxHQUFHLENBQUMsQ0FBQzthQUNqRztvQkFBUztnQkFDUixjQUFjLEVBQUUsQ0FBQzthQUNsQjtRQUNILENBQUMsQ0FBQyxDQUFDO0lBQ0wsQ0FBQztDQUNGO0FBMUNELG9DQTBDQyJ9
@@ -119,6 +119,13 @@ const binaries = {
119
119
  requiredNapiVersions: true,
120
120
  },
121
121
  },
122
+ wrtc: {
123
+ category: 'wrtc',
124
+ description: 'node-webrtc is a Node.js Native Addon that provides bindings to WebRTC M87.',
125
+ syncer: SyncerClass.NodePreGypBinary,
126
+ repo: 'node-webrtc/node-webrtc',
127
+ distUrl: 'https://node-webrtc.s3.amazonaws.com',
128
+ },
122
129
  nodegit: {
123
130
  category: 'nodegit',
124
131
  description: 'Native Node bindings to Git.',
@@ -824,4 +831,4 @@ const binaries = {
824
831
  },
825
832
  };
826
833
  exports.default = binaries;
827
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmluYXJpZXMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9jb25maWcvYmluYXJpZXMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7O0FBQUEsSUFBWSxXQVlYO0FBWkQsV0FBWSxXQUFXO0lBQ3JCLHdDQUF5QixDQUFBO0lBQ3pCLHdDQUF5QixDQUFBO0lBQ3pCLDhDQUErQixDQUFBO0lBQy9CLDRDQUE2QixDQUFBO0lBQzdCLDRDQUE2QixDQUFBO0lBQzdCLGdEQUFpQyxDQUFBO0lBQ2pDLGtEQUFtQyxDQUFBO0lBQ25DLGtEQUFtQyxDQUFBO0lBQ25DLG9EQUFxQyxDQUFBO0lBQ3JDLGdEQUFpQyxDQUFBO0lBQ2pDLG9EQUFxQyxDQUFBO0FBQ3ZDLENBQUMsRUFaVyxXQUFXLEdBQVgsbUJBQVcsS0FBWCxtQkFBVyxRQVl0QjtBQTZCRCxNQUFNLFFBQVEsR0FFVjtJQUNGLGFBQWE7SUFDYixJQUFJLEVBQUU7UUFDSixRQUFRLEVBQUUsTUFBTTtRQUNoQixXQUFXLEVBQUUsc0tBQXNLO1FBQ25MLE1BQU0sRUFBRSxXQUFXLENBQUMsVUFBVTtRQUM5QixJQUFJLEVBQUUsWUFBWTtRQUNsQixPQUFPLEVBQUUscUJBQXFCO0tBQy9CO0lBQ0QsYUFBYTtJQUNiLElBQUksRUFBRTtRQUNKLFFBQVEsRUFBRSxNQUFNO1FBQ2hCLFdBQVcsRUFBRSwyRUFBMkU7UUFDeEYsTUFBTSxFQUFFLFdBQVcsQ0FBQyxVQUFVO1FBQzlCLElBQUksRUFBRSxhQUFhO1FBQ25CLE9BQU8sRUFBRSx5QkFBeUI7S0FDbkM7SUFDRCxTQUFTLEVBQUU7UUFDVCxRQUFRLEVBQUUsU0FBUztRQUNuQixXQUFXLEVBQUUsMkJBQTJCO1FBQ3hDLE1BQU0sRUFBRSxXQUFXLENBQUMsVUFBVTtRQUM5QixJQUFJLEVBQUUsYUFBYTtRQUNuQixPQUFPLEVBQUUsZ0NBQWdDO0tBQzFDO0lBQ0QsY0FBYyxFQUFFO1FBQ2QsUUFBUSxFQUFFLGNBQWM7UUFDeEIsV0FBVyxFQUFF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
834
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmluYXJpZXMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9jb25maWcvYmluYXJpZXMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7O0FBQUEsSUFBWSxXQVlYO0FBWkQsV0FBWSxXQUFXO0lBQ3JCLHdDQUF5QixDQUFBO0lBQ3pCLHdDQUF5QixDQUFBO0lBQ3pCLDhDQUErQixDQUFBO0lBQy9CLDRDQUE2QixDQUFBO0lBQzdCLDRDQUE2QixDQUFBO0lBQzdCLGdEQUFpQyxDQUFBO0lBQ2pDLGtEQUFtQyxDQUFBO0lBQ25DLGtEQUFtQyxDQUFBO0lBQ25DLG9EQUFxQyxDQUFBO0lBQ3JDLGdEQUFpQyxDQUFBO0lBQ2pDLG9EQUFxQyxDQUFBO0FBQ3ZDLENBQUMsRUFaVyxXQUFXLEdBQVgsbUJBQVcsS0FBWCxtQkFBVyxRQVl0QjtBQTZCRCxNQUFNLFFBQVEsR0FFVjtJQUNGLGFBQWE7SUFDYixJQUFJLEVBQUU7UUFDSixRQUFRLEVBQUUsTUFBTTtRQUNoQixXQUFXLEVBQUUsc0tBQXNLO1FBQ25MLE1BQU0sRUFBRSxXQUFXLENBQUMsVUFBVTtRQUM5QixJQUFJLEVBQUUsWUFBWTtRQUNsQixPQUFPLEVBQUUscUJBQXFCO0tBQy9CO0lBQ0QsYUFBYTtJQUNiLElBQUksRUFBRTtRQUNKLFFBQVEsRUFBRSxNQUFNO1FBQ2hCLFdBQVcsRUFBRSwyRUFBMkU7UUFDeEYsTUFBTSxFQUFFLFdBQVcsQ0FBQyxVQUFVO1FBQzlCLElBQUksRUFBRSxhQUFhO1FBQ25CLE9BQU8sRUFBRSx5QkFBeUI7S0FDbkM7SUFDRCxTQUFTLEVBQUU7UUFDVCxRQUFRLEVBQUUsU0FBUztRQUNuQixXQUFXLEVBQUUsMkJBQTJCO1FBQ3hDLE1BQU0sRUFBRSxXQUFXLENBQUMsVUFBVTtRQUM5QixJQUFJLEVBQUUsYUFBYTtRQUNuQixPQUFPLEVBQUUsZ0NBQWdDO0tBQzFDO0lBQ0QsY0FBYyxFQUFFO1FBQ2QsUUFBUSxFQUFFLGNBQWM7UUFDeEIsV0FBVyxFQUFF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