@zeeshan60/event-processor 1.0.13 → 1.0.14

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 (146) hide show
  1. package/dist/ActivityEventHandler.d.ts +1 -0
  2. package/dist/ActivityEventHandler.d.ts.map +1 -1
  3. package/dist/ActivityEventHandler.js +14 -1
  4. package/dist/EventProcessorSDK.d.ts +26 -1
  5. package/dist/EventProcessorSDK.d.ts.map +1 -1
  6. package/dist/EventProcessorSDK.js +75 -1
  7. package/dist/FriendEventHandler.d.ts +1 -0
  8. package/dist/FriendEventHandler.d.ts.map +1 -1
  9. package/dist/FriendEventHandler.js +50 -7
  10. package/dist/GroupEventHandler.d.ts +1 -0
  11. package/dist/GroupEventHandler.d.ts.map +1 -1
  12. package/dist/GroupEventHandler.js +86 -14
  13. package/dist/GroupTransactionEventHandler.d.ts +1 -0
  14. package/dist/GroupTransactionEventHandler.d.ts.map +1 -1
  15. package/dist/GroupTransactionEventHandler.js +47 -9
  16. package/dist/ModelChangeEmitter.d.ts +15 -0
  17. package/dist/ModelChangeEmitter.d.ts.map +1 -0
  18. package/dist/ModelChangeEmitter.js +31 -0
  19. package/dist/TransactionEventHandler.d.ts +1 -0
  20. package/dist/TransactionEventHandler.d.ts.map +1 -1
  21. package/dist/TransactionEventHandler.js +20 -2
  22. package/dist/UserEventHandler.d.ts +1 -0
  23. package/dist/UserEventHandler.d.ts.map +1 -1
  24. package/dist/UserEventHandler.js +26 -3
  25. package/dist/__tests__/test-helpers/IMActivityLogEventStore.d.ts +1 -1
  26. package/dist/__tests__/test-helpers/IMActivityLogEventStore.d.ts.map +1 -1
  27. package/dist/__tests__/test-helpers/IMActivityLogEventStore.js +1 -3
  28. package/dist/__tests__/test-helpers/IMActivityLogModelStore.d.ts +1 -1
  29. package/dist/__tests__/test-helpers/IMActivityLogModelStore.d.ts.map +1 -1
  30. package/dist/__tests__/test-helpers/IMActivityLogModelStore.js +1 -3
  31. package/dist/__tests__/test-helpers/IMFriendEventStore.d.ts +1 -1
  32. package/dist/__tests__/test-helpers/IMFriendEventStore.d.ts.map +1 -1
  33. package/dist/__tests__/test-helpers/IMFriendEventStore.js +1 -3
  34. package/dist/__tests__/test-helpers/IMFriendModelStore.d.ts +1 -1
  35. package/dist/__tests__/test-helpers/IMFriendModelStore.d.ts.map +1 -1
  36. package/dist/__tests__/test-helpers/IMFriendModelStore.js +1 -3
  37. package/dist/__tests__/test-helpers/IMGroupEventStore.d.ts +1 -1
  38. package/dist/__tests__/test-helpers/IMGroupEventStore.d.ts.map +1 -1
  39. package/dist/__tests__/test-helpers/IMGroupEventStore.js +1 -3
  40. package/dist/__tests__/test-helpers/IMGroupModelStore.d.ts +1 -1
  41. package/dist/__tests__/test-helpers/IMGroupModelStore.d.ts.map +1 -1
  42. package/dist/__tests__/test-helpers/IMGroupModelStore.js +1 -3
  43. package/dist/__tests__/test-helpers/IMGroupTransactionEventStore.d.ts +1 -1
  44. package/dist/__tests__/test-helpers/IMGroupTransactionEventStore.d.ts.map +1 -1
  45. package/dist/__tests__/test-helpers/IMGroupTransactionEventStore.js +1 -3
  46. package/dist/__tests__/test-helpers/IMGroupTransactionModelStore.d.ts +1 -1
  47. package/dist/__tests__/test-helpers/IMGroupTransactionModelStore.d.ts.map +1 -1
  48. package/dist/__tests__/test-helpers/IMGroupTransactionModelStore.js +1 -3
  49. package/dist/__tests__/test-helpers/IMTransactionEventStore.d.ts +1 -1
  50. package/dist/__tests__/test-helpers/IMTransactionEventStore.d.ts.map +1 -1
  51. package/dist/__tests__/test-helpers/IMTransactionEventStore.js +1 -3
  52. package/dist/__tests__/test-helpers/IMTransactionModelStore.d.ts +1 -1
  53. package/dist/__tests__/test-helpers/IMTransactionModelStore.d.ts.map +1 -1
  54. package/dist/__tests__/test-helpers/IMTransactionModelStore.js +1 -3
  55. package/dist/__tests__/test-helpers/IMUserEventStore.d.ts +1 -1
  56. package/dist/__tests__/test-helpers/IMUserEventStore.d.ts.map +1 -1
  57. package/dist/__tests__/test-helpers/IMUserEventStore.js +1 -3
  58. package/dist/__tests__/test-helpers/IMUserModelStore.d.ts +1 -1
  59. package/dist/__tests__/test-helpers/IMUserModelStore.d.ts.map +1 -1
  60. package/dist/__tests__/test-helpers/IMUserModelStore.js +1 -3
  61. package/dist/client/controllers/FriendController.d.ts +6 -5
  62. package/dist/client/controllers/FriendController.d.ts.map +1 -1
  63. package/dist/client/controllers/FriendController.js +23 -12
  64. package/dist/client/controllers/UserController.d.ts.map +1 -1
  65. package/dist/client/controllers/UserController.js +3 -23
  66. package/dist/client/handlers/UIEventHandler.d.ts +4 -22
  67. package/dist/client/handlers/UIEventHandler.d.ts.map +1 -1
  68. package/dist/client/handlers/UIEventHandler.js +59 -40
  69. package/dist/converters/eventConverter.d.ts.map +1 -1
  70. package/dist/converters/eventConverter.js +26 -1
  71. package/dist/index.d.ts +2 -2
  72. package/dist/index.d.ts.map +1 -1
  73. package/dist/index.js +11 -3
  74. package/dist/store/ActivityLogEventStore.d.ts +2 -2
  75. package/dist/store/ActivityLogEventStore.d.ts.map +1 -1
  76. package/dist/store/ActivityLogEventStore.js +0 -4
  77. package/dist/store/ActivityLogModelStore.d.ts +4 -4
  78. package/dist/store/ActivityLogModelStore.d.ts.map +1 -1
  79. package/dist/store/ActivityLogModelStore.js +0 -5
  80. package/dist/store/FriendEventStore.d.ts +2 -2
  81. package/dist/store/FriendEventStore.d.ts.map +1 -1
  82. package/dist/store/FriendEventStore.js +0 -4
  83. package/dist/store/FriendModelStore.d.ts +9 -9
  84. package/dist/store/FriendModelStore.d.ts.map +1 -1
  85. package/dist/store/FriendModelStore.js +0 -5
  86. package/dist/store/GroupEventStore.d.ts +2 -2
  87. package/dist/store/GroupEventStore.d.ts.map +1 -1
  88. package/dist/store/GroupEventStore.js +0 -4
  89. package/dist/store/GroupModelStore.d.ts +6 -6
  90. package/dist/store/GroupModelStore.d.ts.map +1 -1
  91. package/dist/store/GroupModelStore.js +0 -5
  92. package/dist/store/GroupTransactionEventStore.d.ts +2 -2
  93. package/dist/store/GroupTransactionEventStore.d.ts.map +1 -1
  94. package/dist/store/GroupTransactionEventStore.js +0 -4
  95. package/dist/store/GroupTransactionModelStore.d.ts +6 -6
  96. package/dist/store/GroupTransactionModelStore.d.ts.map +1 -1
  97. package/dist/store/GroupTransactionModelStore.js +0 -5
  98. package/dist/store/ModelStore.d.ts +4 -4
  99. package/dist/store/ModelStore.d.ts.map +1 -1
  100. package/dist/store/ModelStore.js +0 -4
  101. package/dist/store/TransactionEventStore.d.ts +2 -2
  102. package/dist/store/TransactionEventStore.d.ts.map +1 -1
  103. package/dist/store/TransactionEventStore.js +0 -4
  104. package/dist/store/TransactionModelStore.d.ts +6 -6
  105. package/dist/store/TransactionModelStore.d.ts.map +1 -1
  106. package/dist/store/TransactionModelStore.js +0 -5
  107. package/dist/store/UserEventStore.d.ts +2 -2
  108. package/dist/store/UserEventStore.d.ts.map +1 -1
  109. package/dist/store/UserEventStore.js +0 -4
  110. package/dist/store/UserModelStore.d.ts +7 -7
  111. package/dist/store/UserModelStore.d.ts.map +1 -1
  112. package/dist/store/UserModelStore.js +0 -5
  113. package/package.json +1 -1
  114. package/dist/__tests__/e2e/setup/firebaseEmulator.d.ts +0 -3
  115. package/dist/__tests__/e2e/setup/firebaseEmulator.d.ts.map +0 -1
  116. package/dist/__tests__/e2e/setup/firebaseEmulator.js +0 -87
  117. package/dist/__tests__/e2e/setup/firestoreStores.d.ts +0 -28
  118. package/dist/__tests__/e2e/setup/firestoreStores.d.ts.map +0 -1
  119. package/dist/__tests__/e2e/setup/firestoreStores.js +0 -276
  120. package/dist/__tests__/e2e/setup/firestoreTestHelpers.d.ts +0 -15
  121. package/dist/__tests__/e2e/setup/firestoreTestHelpers.d.ts.map +0 -1
  122. package/dist/__tests__/e2e/setup/firestoreTestHelpers.js +0 -167
  123. package/dist/adapters/FirebaseAdminAdapter.d.ts +0 -8
  124. package/dist/adapters/FirebaseAdminAdapter.d.ts.map +0 -1
  125. package/dist/adapters/FirebaseAdminAdapter.js +0 -21
  126. package/dist/adapters/FirebaseClientAdapter.d.ts +0 -8
  127. package/dist/adapters/FirebaseClientAdapter.d.ts.map +0 -1
  128. package/dist/adapters/FirebaseClientAdapter.js +0 -22
  129. package/dist/client/handlers/UIActivityEventHandler.d.ts +0 -12
  130. package/dist/client/handlers/UIActivityEventHandler.d.ts.map +0 -1
  131. package/dist/client/handlers/UIActivityEventHandler.js +0 -14
  132. package/dist/common/EventBus.d.ts +0 -12
  133. package/dist/common/EventBus.d.ts.map +0 -1
  134. package/dist/common/EventBus.js +0 -26
  135. package/dist/common/EventBusSingleton.d.ts +0 -4
  136. package/dist/common/EventBusSingleton.d.ts.map +0 -1
  137. package/dist/common/EventBusSingleton.js +0 -18
  138. package/dist/config/environment.d.ts +0 -25
  139. package/dist/config/environment.d.ts.map +0 -1
  140. package/dist/config/environment.js +0 -77
  141. package/dist/controllers/UIEventHandler.d.ts +0 -25
  142. package/dist/controllers/UIEventHandler.d.ts.map +0 -1
  143. package/dist/controllers/UIEventHandler.js +0 -50
  144. package/dist/controllers/UserController.d.ts +0 -9
  145. package/dist/controllers/UserController.d.ts.map +0 -1
  146. package/dist/controllers/UserController.js +0 -36
@@ -5,6 +5,7 @@ const _1 = require(".");
5
5
  const DomainEvents_1 = require("./common/DomainEvents");
6
6
  const splitTypeUtils_1 = require("./utils/splitTypeUtils");
7
7
  const uuid_1 = require("uuid");
8
+ const EventProcessorSDK_1 = require("./EventProcessorSDK");
8
9
  class GroupTransactionEventHandler {
9
10
  constructor(modelStore, eventStore, groupModelStore, transactionEventStore, transactionModelStore, activityEventHandler) {
10
11
  this.modelStore = modelStore;
@@ -14,6 +15,13 @@ class GroupTransactionEventHandler {
14
15
  this.transactionModelStore = transactionModelStore;
15
16
  this.activityEventHandler = activityEventHandler;
16
17
  }
18
+ shouldSkipSave(existingModel, updatedModel) {
19
+ if (!existingModel) {
20
+ return false;
21
+ }
22
+ return (existingModel.streamId === updatedModel.streamId &&
23
+ existingModel.version === updatedModel.version);
24
+ }
17
25
  async handleEvent(event) {
18
26
  if (_1.residence.isClient) {
19
27
  await this.eventStore.addEvent(event);
@@ -78,7 +86,9 @@ class GroupTransactionEventHandler {
78
86
  });
79
87
  await this.transactionEventStore.addEvent(creditorTransactionEvent);
80
88
  const creditorModel = creditorTransactionEvent.apply(undefined);
81
- await this.transactionModelStore.save(creditorModel);
89
+ if (!this.shouldSkipSave(undefined, creditorModel)) {
90
+ await this.transactionModelStore.save(creditorModel);
91
+ }
82
92
  const debtorStreamId = (0, uuid_1.v4)();
83
93
  const debtorTransactionEvent = new _1.TransactionCreated({
84
94
  eventId: (0, uuid_1.v4)(),
@@ -102,7 +112,9 @@ class GroupTransactionEventHandler {
102
112
  });
103
113
  await this.transactionEventStore.addEvent(debtorTransactionEvent);
104
114
  const debtorModel = debtorTransactionEvent.apply(undefined);
105
- await this.transactionModelStore.save(debtorModel);
115
+ if (!this.shouldSkipSave(undefined, debtorModel)) {
116
+ await this.transactionModelStore.save(debtorModel);
117
+ }
106
118
  creditor.amount -= transactionAmount;
107
119
  debtor.amount -= transactionAmount;
108
120
  }
@@ -176,7 +188,9 @@ class GroupTransactionEventHandler {
176
188
  });
177
189
  await this.transactionEventStore.addEvent(updateEvent);
178
190
  const updatedModel = updateEvent.apply(existingTx);
179
- await this.transactionModelStore.save(updatedModel);
191
+ if (!this.shouldSkipSave(existingTx, updatedModel)) {
192
+ await this.transactionModelStore.save(updatedModel);
193
+ }
180
194
  }
181
195
  requiredTransactions.delete(key);
182
196
  }
@@ -192,7 +206,9 @@ class GroupTransactionEventHandler {
192
206
  });
193
207
  await this.transactionEventStore.addEvent(deleteEvent);
194
208
  const deletedModel = deleteEvent.apply(existingTx);
195
- await this.transactionModelStore.save(deletedModel);
209
+ if (!this.shouldSkipSave(existingTx, deletedModel)) {
210
+ await this.transactionModelStore.save(deletedModel);
211
+ }
196
212
  }
197
213
  }
198
214
  }
@@ -221,13 +237,20 @@ class GroupTransactionEventHandler {
221
237
  });
222
238
  await this.transactionEventStore.addEvent(createEvent);
223
239
  const model = createEvent.apply(undefined);
224
- await this.transactionModelStore.save(model);
240
+ if (!this.shouldSkipSave(undefined, model)) {
241
+ await this.transactionModelStore.save(model);
242
+ }
225
243
  }
226
244
  }
227
245
  async handleGroupTransactionCreated(event) {
228
246
  const existingModel = await this.modelStore.getByStreamIdWhereDeletedIsFalse(event.streamId);
229
247
  const updatedModel = event.apply(existingModel);
230
- await this.modelStore.save(updatedModel);
248
+ if (!this.shouldSkipSave(existingModel, updatedModel)) {
249
+ await this.modelStore.save(updatedModel);
250
+ if ((0, EventProcessorSDK_1.isSDKInitialized)()) {
251
+ EventProcessorSDK_1.EventProcessorSDK.getInstance().emitModelChange("GroupTransactionModel", updatedModel);
252
+ }
253
+ }
231
254
  if (this.activityEventHandler) {
232
255
  await this.activityEventHandler.createActivityLog(event, existingModel, updatedModel);
233
256
  }
@@ -256,7 +279,12 @@ class GroupTransactionEventHandler {
256
279
  });
257
280
  await this.eventStore.addEvent(perspectiveEvent);
258
281
  const perspectiveModel = perspectiveEvent.apply(undefined);
259
- await this.modelStore.save(perspectiveModel);
282
+ if (!this.shouldSkipSave(undefined, perspectiveModel)) {
283
+ await this.modelStore.save(perspectiveModel);
284
+ if ((0, EventProcessorSDK_1.isSDKInitialized)()) {
285
+ EventProcessorSDK_1.EventProcessorSDK.getInstance().emitModelChange("GroupTransactionModel", perspectiveModel);
286
+ }
287
+ }
260
288
  if (this.activityEventHandler) {
261
289
  await this.activityEventHandler.createActivityLog(perspectiveEvent, undefined, perspectiveModel);
262
290
  }
@@ -273,7 +301,12 @@ class GroupTransactionEventHandler {
273
301
  const oldMembers = existingModel.originalTransaction.members;
274
302
  const newMembers = event.originalTransaction.members;
275
303
  const updatedModel = event.apply(existingModel);
276
- await this.modelStore.save(updatedModel);
304
+ if (!this.shouldSkipSave(existingModel, updatedModel)) {
305
+ await this.modelStore.save(updatedModel);
306
+ if ((0, EventProcessorSDK_1.isSDKInitialized)()) {
307
+ EventProcessorSDK_1.EventProcessorSDK.getInstance().emitModelChange("GroupTransactionModel", updatedModel);
308
+ }
309
+ }
277
310
  if (this.activityEventHandler) {
278
311
  await this.activityEventHandler.createActivityLog(event, existingModel, updatedModel);
279
312
  }
@@ -298,7 +331,12 @@ class GroupTransactionEventHandler {
298
331
  const existingPerspectiveModel = await this.modelStore.findByUserIdAndTransactionId(groupPerspective.userId, updatedModel.transactionId);
299
332
  if (existingPerspectiveModel) {
300
333
  const perspectiveModel = perspectiveEvent.apply(existingPerspectiveModel);
301
- await this.modelStore.save(perspectiveModel);
334
+ if (!this.shouldSkipSave(existingPerspectiveModel, perspectiveModel)) {
335
+ await this.modelStore.save(perspectiveModel);
336
+ if ((0, EventProcessorSDK_1.isSDKInitialized)()) {
337
+ EventProcessorSDK_1.EventProcessorSDK.getInstance().emitModelChange("GroupTransactionModel", perspectiveModel);
338
+ }
339
+ }
302
340
  if (this.activityEventHandler) {
303
341
  await this.activityEventHandler.createActivityLog(perspectiveEvent, existingPerspectiveModel, perspectiveModel);
304
342
  }
@@ -0,0 +1,15 @@
1
+ import { Model } from "./common/Model";
2
+ import { Subscription, Observable } from "rxjs";
3
+ export interface ModelChange {
4
+ modelType: string;
5
+ model: Model;
6
+ }
7
+ export declare class ModelChangeEmitter {
8
+ private subject;
9
+ subscribe(next: (change: ModelChange) => void, error?: (error: Error) => void): Subscription;
10
+ asObservable(): Observable<ModelChange>;
11
+ emit(modelType: string, model: Model): void;
12
+ clear(): void;
13
+ hasListeners(): boolean;
14
+ }
15
+ //# sourceMappingURL=ModelChangeEmitter.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ModelChangeEmitter.d.ts","sourceRoot":"","sources":["../src/ModelChangeEmitter.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,MAAM,gBAAgB,CAAC;AACvC,OAAO,EAAW,YAAY,EAAE,UAAU,EAAE,MAAM,MAAM,CAAC;AAEzD,MAAM,WAAW,WAAW;IACxB,SAAS,EAAE,MAAM,CAAC;IAClB,KAAK,EAAE,KAAK,CAAC;CAChB;AAED,qBAAa,kBAAkB;IAC3B,OAAO,CAAC,OAAO,CAA8B;IAE7C,SAAS,CACL,IAAI,EAAE,CAAC,MAAM,EAAE,WAAW,KAAK,IAAI,EACnC,KAAK,CAAC,EAAE,CAAC,KAAK,EAAE,KAAK,KAAK,IAAI,GAC/B,YAAY;IAIf,YAAY,IAAI,UAAU,CAAC,WAAW,CAAC;IAIvC,IAAI,CAAC,SAAS,EAAE,MAAM,EAAE,KAAK,EAAE,KAAK,GAAG,IAAI;IAW3C,KAAK,IAAI,IAAI;IAKb,YAAY,IAAI,OAAO;CAG1B"}
@@ -0,0 +1,31 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.ModelChangeEmitter = void 0;
4
+ const rxjs_1 = require("rxjs");
5
+ class ModelChangeEmitter {
6
+ constructor() {
7
+ this.subject = new rxjs_1.Subject();
8
+ }
9
+ subscribe(next, error) {
10
+ return this.subject.subscribe({ next, error });
11
+ }
12
+ asObservable() {
13
+ return this.subject.asObservable();
14
+ }
15
+ emit(modelType, model) {
16
+ try {
17
+ this.subject.next({ modelType, model });
18
+ }
19
+ catch (error) {
20
+ console.error(`Error in ModelChangeEmitter listener for ${modelType}:`, error);
21
+ }
22
+ }
23
+ clear() {
24
+ this.subject.complete();
25
+ this.subject = new rxjs_1.Subject();
26
+ }
27
+ hasListeners() {
28
+ return this.subject.observed;
29
+ }
30
+ }
31
+ exports.ModelChangeEmitter = ModelChangeEmitter;
@@ -6,6 +6,7 @@ export declare class TransactionEventHandler {
6
6
  private txUserModelStore;
7
7
  private activityEventHandler?;
8
8
  constructor(modelStore: TransactionModelStore, eventStore: TransactionEventStore, txUserModelStore: UserModelStore, activityEventHandler?: ActivityEventHandler | undefined);
9
+ private shouldSkipSave;
9
10
  handleEvent(event: TransactionEvent): Promise<TransactionModel>;
10
11
  private createMirrorEvent;
11
12
  }
@@ -1 +1 @@
1
- {"version":3,"file":"TransactionEventHandler.d.ts","sourceRoot":"","sources":["../src/TransactionEventHandler.ts"],"names":[],"mappings":"AAAA,OAAO,EASH,gBAAgB,EAChB,qBAAqB,EACrB,gBAAgB,EAChB,qBAAqB,EACrB,cAAc,EACjB,MAAM,GAAG,CAAC;AACX,OAAO,EAAE,oBAAoB,EAAE,MAAM,wBAAwB,CAAC;AAS9D,qBAAa,uBAAuB;IAE5B,OAAO,CAAC,UAAU;IAClB,OAAO,CAAC,UAAU;IAClB,OAAO,CAAC,gBAAgB;IACxB,OAAO,CAAC,oBAAoB,CAAC;gBAHrB,UAAU,EAAE,qBAAqB,EACjC,UAAU,EAAE,qBAAqB,EACjC,gBAAgB,EAAE,cAAc,EAChC,oBAAoB,CAAC,EAAE,oBAAoB,YAAA;IAGjD,WAAW,CAAC,KAAK,EAAE,gBAAgB,GAAG,OAAO,CAAC,gBAAgB,CAAC;YA6BvD,iBAAiB;CAgLlC"}
1
+ {"version":3,"file":"TransactionEventHandler.d.ts","sourceRoot":"","sources":["../src/TransactionEventHandler.ts"],"names":[],"mappings":"AAAA,OAAO,EASH,gBAAgB,EAChB,qBAAqB,EACrB,gBAAgB,EAChB,qBAAqB,EACrB,cAAc,EAEjB,MAAM,GAAG,CAAC;AACX,OAAO,EAAE,oBAAoB,EAAE,MAAM,wBAAwB,CAAC;AAU9D,qBAAa,uBAAuB;IAE5B,OAAO,CAAC,UAAU;IAClB,OAAO,CAAC,UAAU;IAClB,OAAO,CAAC,gBAAgB;IACxB,OAAO,CAAC,oBAAoB,CAAC;gBAHrB,UAAU,EAAE,qBAAqB,EACjC,UAAU,EAAE,qBAAqB,EACjC,gBAAgB,EAAE,cAAc,EAChC,oBAAoB,CAAC,EAAE,oBAAoB,YAAA;IAGvD,OAAO,CAAC,cAAc;IAahB,WAAW,CAAC,KAAK,EAAE,gBAAgB,GAAG,OAAO,CAAC,gBAAgB,CAAC;YAqCvD,iBAAiB;CAwLlC"}
@@ -6,6 +6,7 @@ const DomainEvents_1 = require("./common/DomainEvents");
6
6
  const splitTypeUtils_1 = require("./utils/splitTypeUtils");
7
7
  const userPathUtils_1 = require("./utils/userPathUtils");
8
8
  const uuid_1 = require("uuid");
9
+ const EventProcessorSDK_1 = require("./EventProcessorSDK");
9
10
  class TransactionEventHandler {
10
11
  constructor(modelStore, eventStore, txUserModelStore, activityEventHandler) {
11
12
  this.modelStore = modelStore;
@@ -13,6 +14,13 @@ class TransactionEventHandler {
13
14
  this.txUserModelStore = txUserModelStore;
14
15
  this.activityEventHandler = activityEventHandler;
15
16
  }
17
+ shouldSkipSave(existingModel, updatedModel) {
18
+ if (!existingModel) {
19
+ return false;
20
+ }
21
+ return (existingModel.streamId === updatedModel.streamId &&
22
+ existingModel.version === updatedModel.version);
23
+ }
16
24
  async handleEvent(event) {
17
25
  const eventType = event.constructor.name;
18
26
  if (!(0, DomainEvents_1.isValidTransactionEventType)(eventType)) {
@@ -20,7 +28,12 @@ class TransactionEventHandler {
20
28
  }
21
29
  const existingModel = await this.modelStore.getByStreamIdWhereDeletedIsFalse(event.streamId);
22
30
  const model = event.apply(existingModel);
23
- await this.modelStore.save(model);
31
+ if (!this.shouldSkipSave(existingModel, model)) {
32
+ await this.modelStore.save(model);
33
+ if ((0, EventProcessorSDK_1.isSDKInitialized)()) {
34
+ EventProcessorSDK_1.EventProcessorSDK.getInstance().emitModelChange("TransactionModel", model);
35
+ }
36
+ }
24
37
  if (_1.residence.isClient) {
25
38
  await this.eventStore.addEvent(event);
26
39
  if (this.activityEventHandler) {
@@ -162,7 +175,12 @@ class TransactionEventHandler {
162
175
  }
163
176
  await this.eventStore.addEvent(mirrorEvent);
164
177
  const updatedModel = mirrorEvent.apply(existingMirrorModel);
165
- await this.modelStore.save(updatedModel);
178
+ if (!this.shouldSkipSave(existingMirrorModel, updatedModel)) {
179
+ await this.modelStore.save(updatedModel);
180
+ if ((0, EventProcessorSDK_1.isSDKInitialized)()) {
181
+ EventProcessorSDK_1.EventProcessorSDK.getInstance().emitModelChange("TransactionModel", updatedModel);
182
+ }
183
+ }
166
184
  if (this.activityEventHandler) {
167
185
  await this.activityEventHandler.createActivityLog(mirrorEvent, existingMirrorModel, updatedModel);
168
186
  }
@@ -5,6 +5,7 @@ export declare class UserEventHandler {
5
5
  private eventStore;
6
6
  private activityEventHandler?;
7
7
  constructor(modelStore: UserModelStore, eventStore: UserEventStore, activityEventHandler?: ActivityEventHandler | undefined);
8
+ private shouldSkipSave;
8
9
  handleEvent(event: UserEvent): Promise<UserModel>;
9
10
  handleUserCreated(event: UserCreated): Promise<UserModel>;
10
11
  }
@@ -1 +1 @@
1
- {"version":3,"file":"UserEventHandler.d.ts","sourceRoot":"","sources":["../src/UserEventHandler.ts"],"names":[],"mappings":"AAAA,OAAO,EAGH,WAAW,EACX,SAAS,EACT,cAAc,EACd,SAAS,EACT,cAAc,EACjB,MAAM,GAAG,CAAC;AACX,OAAO,EAAE,oBAAoB,EAAE,MAAM,wBAAwB,CAAC;AAK9D,qBAAa,gBAAgB;IAErB,OAAO,CAAC,UAAU;IAClB,OAAO,CAAC,UAAU;IAClB,OAAO,CAAC,oBAAoB,CAAC;gBAFrB,UAAU,EAAE,cAAc,EAC1B,UAAU,EAAE,cAAc,EAC1B,oBAAoB,CAAC,EAAE,oBAAoB,YAAA;IAGjD,WAAW,CAAC,KAAK,EAAE,SAAS,GAAG,OAAO,CAAC,SAAS,CAAC;IAgDjD,iBAAiB,CAAC,KAAK,EAAE,WAAW,GAAG,OAAO,CAAC,SAAS,CAAC;CAmDlE"}
1
+ {"version":3,"file":"UserEventHandler.d.ts","sourceRoot":"","sources":["../src/UserEventHandler.ts"],"names":[],"mappings":"AAAA,OAAO,EAGH,WAAW,EACX,SAAS,EACT,cAAc,EACd,SAAS,EACT,cAAc,EAEjB,MAAM,GAAG,CAAC;AACX,OAAO,EAAE,oBAAoB,EAAE,MAAM,wBAAwB,CAAC;AAK9D,qBAAa,gBAAgB;IAErB,OAAO,CAAC,UAAU;IAClB,OAAO,CAAC,UAAU;IAClB,OAAO,CAAC,oBAAoB,CAAC;gBAFrB,UAAU,EAAE,cAAc,EAC1B,UAAU,EAAE,cAAc,EAC1B,oBAAoB,CAAC,EAAE,oBAAoB,YAAA;IAGvD,OAAO,CAAC,cAAc;IAahB,WAAW,CAAC,KAAK,EAAE,SAAS,GAAG,OAAO,CAAC,SAAS,CAAC;IAwDjD,iBAAiB,CAAC,KAAK,EAAE,WAAW,GAAG,OAAO,CAAC,SAAS,CAAC;CAmElE"}
@@ -4,12 +4,20 @@ exports.UserEventHandler = void 0;
4
4
  const _1 = require(".");
5
5
  const DomainEvents_1 = require("./common/DomainEvents");
6
6
  const uuid_1 = require("uuid");
7
+ const EventProcessorSDK_1 = require("./EventProcessorSDK");
7
8
  class UserEventHandler {
8
9
  constructor(modelStore, eventStore, activityEventHandler) {
9
10
  this.modelStore = modelStore;
10
11
  this.eventStore = eventStore;
11
12
  this.activityEventHandler = activityEventHandler;
12
13
  }
14
+ shouldSkipSave(existingModel, updatedModel) {
15
+ if (!existingModel) {
16
+ return false;
17
+ }
18
+ return (existingModel.streamId === updatedModel.streamId &&
19
+ existingModel.version === updatedModel.version);
20
+ }
13
21
  async handleEvent(event) {
14
22
  const eventType = event.constructor.name;
15
23
  if (!(0, DomainEvents_1.isValidUserEventType)(eventType)) {
@@ -36,7 +44,12 @@ class UserEventHandler {
36
44
  else {
37
45
  const existingModel = await this.modelStore.getByStreamIdWhereDeletedIsFalse(event.streamId);
38
46
  const updatedModel = event.apply(existingModel);
39
- await this.modelStore.save(updatedModel);
47
+ if (!this.shouldSkipSave(existingModel, updatedModel)) {
48
+ await this.modelStore.save(updatedModel);
49
+ if ((0, EventProcessorSDK_1.isSDKInitialized)()) {
50
+ EventProcessorSDK_1.EventProcessorSDK.getInstance().emitModelChange("UserModel", updatedModel);
51
+ }
52
+ }
40
53
  if (_1.residence.isClient) {
41
54
  await this.eventStore.addEvent(event);
42
55
  if (this.activityEventHandler) {
@@ -75,13 +88,23 @@ class UserEventHandler {
75
88
  });
76
89
  await this.eventStore.addEvent(mergeEvent);
77
90
  const updatedModel = mergeEvent.apply(placeholderUser);
78
- await this.modelStore.save(updatedModel);
91
+ if (!this.shouldSkipSave(placeholderUser, updatedModel)) {
92
+ await this.modelStore.save(updatedModel);
93
+ if ((0, EventProcessorSDK_1.isSDKInitialized)()) {
94
+ EventProcessorSDK_1.EventProcessorSDK.getInstance().emitModelChange("UserModel", updatedModel);
95
+ }
96
+ }
79
97
  return updatedModel;
80
98
  }
81
99
  await this.eventStore.addEvent(event);
82
100
  const existingModel = await this.modelStore.getByStreamIdWhereDeletedIsFalse(event.streamId);
83
101
  const updatedModel = event.apply(existingModel);
84
- await this.modelStore.save(updatedModel);
102
+ if (!this.shouldSkipSave(existingModel, updatedModel)) {
103
+ await this.modelStore.save(updatedModel);
104
+ if ((0, EventProcessorSDK_1.isSDKInitialized)()) {
105
+ EventProcessorSDK_1.EventProcessorSDK.getInstance().emitModelChange("UserModel", updatedModel);
106
+ }
107
+ }
85
108
  return updatedModel;
86
109
  }
87
110
  }
@@ -1,6 +1,6 @@
1
1
  import { ActivityLogEventStore } from "../..";
2
2
  import { ActivityLogEvent } from "../..";
3
- export declare class IMActivityLogEventStore extends ActivityLogEventStore {
3
+ export declare class IMActivityLogEventStore implements ActivityLogEventStore {
4
4
  private events;
5
5
  addEvent(event: ActivityLogEvent): Promise<void>;
6
6
  getAllEvents(): ActivityLogEvent[];
@@ -1 +1 @@
1
- {"version":3,"file":"IMActivityLogEventStore.d.ts","sourceRoot":"","sources":["../../../src/__tests__/test-helpers/IMActivityLogEventStore.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,qBAAqB,EAAE,MAAM,OAAO,CAAC;AAC9C,OAAO,EAAE,gBAAgB,EAAE,MAAM,OAAO,CAAC;AAEzC,qBAAa,uBAAwB,SAAQ,qBAAqB;IAC9D,OAAO,CAAC,MAAM,CAA0B;IAElC,QAAQ,CAAC,KAAK,EAAE,gBAAgB,GAAG,OAAO,CAAC,IAAI,CAAC;IAKtD,YAAY,IAAI,gBAAgB,EAAE;IAIlC,KAAK,IAAI,IAAI;CAGhB"}
1
+ {"version":3,"file":"IMActivityLogEventStore.d.ts","sourceRoot":"","sources":["../../../src/__tests__/test-helpers/IMActivityLogEventStore.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,qBAAqB,EAAE,MAAM,OAAO,CAAC;AAC9C,OAAO,EAAE,gBAAgB,EAAE,MAAM,OAAO,CAAC;AAEzC,qBAAa,uBAAwB,YAAW,qBAAqB;IACjE,OAAO,CAAC,MAAM,CAA0B;IAElC,QAAQ,CAAC,KAAK,EAAE,gBAAgB,GAAG,OAAO,CAAC,IAAI,CAAC;IAKtD,YAAY,IAAI,gBAAgB,EAAE;IAIlC,KAAK,IAAI,IAAI;CAGhB"}
@@ -1,10 +1,8 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.IMActivityLogEventStore = void 0;
4
- const __1 = require("../..");
5
- class IMActivityLogEventStore extends __1.ActivityLogEventStore {
4
+ class IMActivityLogEventStore {
6
5
  constructor() {
7
- super(...arguments);
8
6
  this.events = [];
9
7
  }
10
8
  async addEvent(event) {
@@ -1,6 +1,6 @@
1
1
  import { ActivityLogModelStore } from "../..";
2
2
  import { ActivityLogModel } from "../..";
3
- export declare class IMActivityLogModelStore extends ActivityLogModelStore {
3
+ export declare class IMActivityLogModelStore implements ActivityLogModelStore {
4
4
  private models;
5
5
  getByStreamId(streamId: string): Promise<ActivityLogModel | undefined>;
6
6
  getByStreamIdWhereDeletedIsFalse(streamId: string): Promise<ActivityLogModel | undefined>;
@@ -1 +1 @@
1
- {"version":3,"file":"IMActivityLogModelStore.d.ts","sourceRoot":"","sources":["../../../src/__tests__/test-helpers/IMActivityLogModelStore.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,qBAAqB,EAAE,MAAM,OAAO,CAAC;AAC9C,OAAO,EAAE,gBAAgB,EAAE,MAAM,OAAO,CAAC;AAEzC,qBAAa,uBAAwB,SAAQ,qBAAqB;IAC9D,OAAO,CAAC,MAAM,CAA4C;IAEpD,aAAa,CACf,QAAQ,EAAE,MAAM,GACjB,OAAO,CAAC,gBAAgB,GAAG,SAAS,CAAC;IAIlC,gCAAgC,CAClC,QAAQ,EAAE,MAAM,GACjB,OAAO,CAAC,gBAAgB,GAAG,SAAS,CAAC;IAQlC,IAAI,CAAC,KAAK,EAAE,gBAAgB,GAAG,OAAO,CAAC,IAAI,CAAC;IAKlD,KAAK,IAAI,IAAI;IAIb,YAAY,IAAI,gBAAgB,EAAE;CAGrC"}
1
+ {"version":3,"file":"IMActivityLogModelStore.d.ts","sourceRoot":"","sources":["../../../src/__tests__/test-helpers/IMActivityLogModelStore.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,qBAAqB,EAAE,MAAM,OAAO,CAAC;AAC9C,OAAO,EAAE,gBAAgB,EAAE,MAAM,OAAO,CAAC;AAEzC,qBAAa,uBAAwB,YAAW,qBAAqB;IACjE,OAAO,CAAC,MAAM,CAA4C;IAEpD,aAAa,CACf,QAAQ,EAAE,MAAM,GACjB,OAAO,CAAC,gBAAgB,GAAG,SAAS,CAAC;IAIlC,gCAAgC,CAClC,QAAQ,EAAE,MAAM,GACjB,OAAO,CAAC,gBAAgB,GAAG,SAAS,CAAC;IAQlC,IAAI,CAAC,KAAK,EAAE,gBAAgB,GAAG,OAAO,CAAC,IAAI,CAAC;IAKlD,KAAK,IAAI,IAAI;IAIb,YAAY,IAAI,gBAAgB,EAAE;CAGrC"}
@@ -1,10 +1,8 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.IMActivityLogModelStore = void 0;
4
- const __1 = require("../..");
5
- class IMActivityLogModelStore extends __1.ActivityLogModelStore {
4
+ class IMActivityLogModelStore {
6
5
  constructor() {
7
- super(...arguments);
8
6
  this.models = new Map();
9
7
  }
10
8
  async getByStreamId(streamId) {
@@ -1,6 +1,6 @@
1
1
  import { FriendEventStore } from "../..";
2
2
  import { FriendEvent } from "../..";
3
- export declare class IMFriendEventStore extends FriendEventStore {
3
+ export declare class IMFriendEventStore implements FriendEventStore {
4
4
  private events;
5
5
  addEvent(event: FriendEvent): Promise<void>;
6
6
  getAll(): FriendEvent[];
@@ -1 +1 @@
1
- {"version":3,"file":"IMFriendEventStore.d.ts","sourceRoot":"","sources":["../../../src/__tests__/test-helpers/IMFriendEventStore.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAE,MAAM,OAAO,CAAC;AACzC,OAAO,EAAE,WAAW,EAAE,MAAM,OAAO,CAAC;AAEpC,qBAAa,kBAAmB,SAAQ,gBAAgB;IACpD,OAAO,CAAC,MAAM,CAAqB;IAE7B,QAAQ,CAAC,KAAK,EAAE,WAAW,GAAG,OAAO,CAAC,IAAI,CAAC;IAIjD,MAAM,IAAI,WAAW,EAAE;IAIvB,KAAK,IAAI,IAAI;CAGhB"}
1
+ {"version":3,"file":"IMFriendEventStore.d.ts","sourceRoot":"","sources":["../../../src/__tests__/test-helpers/IMFriendEventStore.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAE,MAAM,OAAO,CAAC;AACzC,OAAO,EAAE,WAAW,EAAE,MAAM,OAAO,CAAC;AAEpC,qBAAa,kBAAmB,YAAW,gBAAgB;IACvD,OAAO,CAAC,MAAM,CAAqB;IAE7B,QAAQ,CAAC,KAAK,EAAE,WAAW,GAAG,OAAO,CAAC,IAAI,CAAC;IAIjD,MAAM,IAAI,WAAW,EAAE;IAIvB,KAAK,IAAI,IAAI;CAGhB"}
@@ -1,10 +1,8 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.IMFriendEventStore = void 0;
4
- const __1 = require("../..");
5
- class IMFriendEventStore extends __1.FriendEventStore {
4
+ class IMFriendEventStore {
6
5
  constructor() {
7
- super(...arguments);
8
6
  this.events = [];
9
7
  }
10
8
  async addEvent(event) {
@@ -1,6 +1,6 @@
1
1
  import { FriendModelStore } from "../..";
2
2
  import { FriendModel } from "../..";
3
- export declare class IMFriendModelStore extends FriendModelStore {
3
+ export declare class IMFriendModelStore implements FriendModelStore {
4
4
  private models;
5
5
  getByStreamId(streamId: string): Promise<FriendModel | undefined>;
6
6
  getByStreamIdWhereDeletedIsFalse(streamId: string): Promise<FriendModel | undefined>;
@@ -1 +1 @@
1
- {"version":3,"file":"IMFriendModelStore.d.ts","sourceRoot":"","sources":["../../../src/__tests__/test-helpers/IMFriendModelStore.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAE,MAAM,OAAO,CAAC;AACzC,OAAO,EAAE,WAAW,EAAE,MAAM,OAAO,CAAC;AAEpC,qBAAa,kBAAmB,SAAQ,gBAAgB;IACpD,OAAO,CAAC,MAAM,CAAuC;IAE/C,aAAa,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,WAAW,GAAG,SAAS,CAAC;IAKjE,gCAAgC,CAClC,QAAQ,EAAE,MAAM,GACjB,OAAO,CAAC,WAAW,GAAG,SAAS,CAAC;IAQ7B,wCAAwC,CAC1C,MAAM,EAAE,MAAM,EACd,QAAQ,EAAE,MAAM,GACjB,OAAO,CAAC,WAAW,GAAG,SAAS,CAAC;IAa7B,wCAAwC,CAC1C,MAAM,EAAE,MAAM,EACd,QAAQ,EAAE,MAAM,GACjB,OAAO,CAAC,WAAW,GAAG,SAAS,CAAC;IAa7B,2CAA2C,CAC7C,MAAM,EAAE,MAAM,EACd,KAAK,EAAE,MAAM,GACd,OAAO,CAAC,WAAW,GAAG,SAAS,CAAC;IAa7B,iDAAiD,CACnD,MAAM,EAAE,MAAM,EACd,WAAW,EAAE,MAAM,GACpB,OAAO,CAAC,WAAW,GAAG,SAAS,CAAC;IAa7B,kCAAkC,CACpC,MAAM,EAAE,MAAM,GACf,OAAO,CAAC,WAAW,EAAE,CAAC;IAUnB,IAAI,CAAC,KAAK,EAAE,WAAW,GAAG,OAAO,CAAC,IAAI,CAAC;IAI7C,MAAM,IAAI,WAAW,EAAE;IAIvB,yBAAyB,IAAI,WAAW,EAAE;IAM1C,KAAK,IAAI,IAAI;CAGhB"}
1
+ {"version":3,"file":"IMFriendModelStore.d.ts","sourceRoot":"","sources":["../../../src/__tests__/test-helpers/IMFriendModelStore.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAE,MAAM,OAAO,CAAC;AACzC,OAAO,EAAE,WAAW,EAAE,MAAM,OAAO,CAAC;AAEpC,qBAAa,kBAAmB,YAAW,gBAAgB;IACvD,OAAO,CAAC,MAAM,CAAuC;IAE/C,aAAa,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,WAAW,GAAG,SAAS,CAAC;IAKjE,gCAAgC,CAClC,QAAQ,EAAE,MAAM,GACjB,OAAO,CAAC,WAAW,GAAG,SAAS,CAAC;IAQ7B,wCAAwC,CAC1C,MAAM,EAAE,MAAM,EACd,QAAQ,EAAE,MAAM,GACjB,OAAO,CAAC,WAAW,GAAG,SAAS,CAAC;IAa7B,wCAAwC,CAC1C,MAAM,EAAE,MAAM,EACd,QAAQ,EAAE,MAAM,GACjB,OAAO,CAAC,WAAW,GAAG,SAAS,CAAC;IAa7B,2CAA2C,CAC7C,MAAM,EAAE,MAAM,EACd,KAAK,EAAE,MAAM,GACd,OAAO,CAAC,WAAW,GAAG,SAAS,CAAC;IAa7B,iDAAiD,CACnD,MAAM,EAAE,MAAM,EACd,WAAW,EAAE,MAAM,GACpB,OAAO,CAAC,WAAW,GAAG,SAAS,CAAC;IAa7B,kCAAkC,CACpC,MAAM,EAAE,MAAM,GACf,OAAO,CAAC,WAAW,EAAE,CAAC;IAUnB,IAAI,CAAC,KAAK,EAAE,WAAW,GAAG,OAAO,CAAC,IAAI,CAAC;IAI7C,MAAM,IAAI,WAAW,EAAE;IAIvB,yBAAyB,IAAI,WAAW,EAAE;IAM1C,KAAK,IAAI,IAAI;CAGhB"}
@@ -1,10 +1,8 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.IMFriendModelStore = void 0;
4
- const __1 = require("../..");
5
- class IMFriendModelStore extends __1.FriendModelStore {
4
+ class IMFriendModelStore {
6
5
  constructor() {
7
- super(...arguments);
8
6
  this.models = new Map();
9
7
  }
10
8
  async getByStreamId(streamId) {
@@ -1,6 +1,6 @@
1
1
  import { GroupEventStore } from "../..";
2
2
  import { GroupEvent } from "../..";
3
- export declare class IMGroupEventStore extends GroupEventStore {
3
+ export declare class IMGroupEventStore implements GroupEventStore {
4
4
  private events;
5
5
  addEvent(event: GroupEvent): Promise<void>;
6
6
  getAll(): GroupEvent[];
@@ -1 +1 @@
1
- {"version":3,"file":"IMGroupEventStore.d.ts","sourceRoot":"","sources":["../../../src/__tests__/test-helpers/IMGroupEventStore.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,OAAO,CAAC;AACxC,OAAO,EAAE,UAAU,EAAE,MAAM,OAAO,CAAC;AAEnC,qBAAa,iBAAkB,SAAQ,eAAe;IAClD,OAAO,CAAC,MAAM,CAAoB;IAE5B,QAAQ,CAAC,KAAK,EAAE,UAAU,GAAG,OAAO,CAAC,IAAI,CAAC;IAIhD,MAAM,IAAI,UAAU,EAAE;IAItB,KAAK,IAAI,IAAI;CAGhB"}
1
+ {"version":3,"file":"IMGroupEventStore.d.ts","sourceRoot":"","sources":["../../../src/__tests__/test-helpers/IMGroupEventStore.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,OAAO,CAAC;AACxC,OAAO,EAAE,UAAU,EAAE,MAAM,OAAO,CAAC;AAEnC,qBAAa,iBAAkB,YAAW,eAAe;IACrD,OAAO,CAAC,MAAM,CAAoB;IAE5B,QAAQ,CAAC,KAAK,EAAE,UAAU,GAAG,OAAO,CAAC,IAAI,CAAC;IAIhD,MAAM,IAAI,UAAU,EAAE;IAItB,KAAK,IAAI,IAAI;CAGhB"}
@@ -1,10 +1,8 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.IMGroupEventStore = void 0;
4
- const __1 = require("../..");
5
- class IMGroupEventStore extends __1.GroupEventStore {
4
+ class IMGroupEventStore {
6
5
  constructor() {
7
- super(...arguments);
8
6
  this.events = [];
9
7
  }
10
8
  async addEvent(event) {
@@ -1,6 +1,6 @@
1
1
  import { GroupModelStore } from "../..";
2
2
  import { GroupModel } from "../..";
3
- export declare class IMGroupModelStore extends GroupModelStore {
3
+ export declare class IMGroupModelStore implements GroupModelStore {
4
4
  private models;
5
5
  getByStreamId(streamId: string): Promise<GroupModel | undefined>;
6
6
  getByStreamIdWhereDeletedIsFalse(streamId: string): Promise<GroupModel | undefined>;
@@ -1 +1 @@
1
- {"version":3,"file":"IMGroupModelStore.d.ts","sourceRoot":"","sources":["../../../src/__tests__/test-helpers/IMGroupModelStore.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,OAAO,CAAC;AACxC,OAAO,EAAE,UAAU,EAAE,MAAM,OAAO,CAAC;AAEnC,qBAAa,iBAAkB,SAAQ,eAAe;IAClD,OAAO,CAAC,MAAM,CAAsC;IAE9C,aAAa,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,UAAU,GAAG,SAAS,CAAC;IAKhE,gCAAgC,CAClC,QAAQ,EAAE,MAAM,GACjB,OAAO,CAAC,UAAU,GAAG,SAAS,CAAC;IAQ5B,uCAAuC,CACzC,MAAM,EAAE,MAAM,EACd,OAAO,EAAE,MAAM,GAChB,OAAO,CAAC,UAAU,GAAG,SAAS,CAAC;IAa5B,iCAAiC,CACnC,OAAO,EAAE,MAAM,GAChB,OAAO,CAAC,UAAU,EAAE,CAAC;IAUlB,IAAI,CAAC,KAAK,EAAE,UAAU,GAAG,OAAO,CAAC,IAAI,CAAC;IAI5C,MAAM,IAAI,UAAU,EAAE;IAItB,yBAAyB,IAAI,UAAU,EAAE;IAMzC,KAAK,IAAI,IAAI;CAGhB"}
1
+ {"version":3,"file":"IMGroupModelStore.d.ts","sourceRoot":"","sources":["../../../src/__tests__/test-helpers/IMGroupModelStore.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,OAAO,CAAC;AACxC,OAAO,EAAE,UAAU,EAAE,MAAM,OAAO,CAAC;AAEnC,qBAAa,iBAAkB,YAAW,eAAe;IACrD,OAAO,CAAC,MAAM,CAAsC;IAE9C,aAAa,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,UAAU,GAAG,SAAS,CAAC;IAKhE,gCAAgC,CAClC,QAAQ,EAAE,MAAM,GACjB,OAAO,CAAC,UAAU,GAAG,SAAS,CAAC;IAQ5B,uCAAuC,CACzC,MAAM,EAAE,MAAM,EACd,OAAO,EAAE,MAAM,GAChB,OAAO,CAAC,UAAU,GAAG,SAAS,CAAC;IAa5B,iCAAiC,CACnC,OAAO,EAAE,MAAM,GAChB,OAAO,CAAC,UAAU,EAAE,CAAC;IAUlB,IAAI,CAAC,KAAK,EAAE,UAAU,GAAG,OAAO,CAAC,IAAI,CAAC;IAI5C,MAAM,IAAI,UAAU,EAAE;IAItB,yBAAyB,IAAI,UAAU,EAAE;IAMzC,KAAK,IAAI,IAAI;CAGhB"}
@@ -1,10 +1,8 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.IMGroupModelStore = void 0;
4
- const __1 = require("../..");
5
- class IMGroupModelStore extends __1.GroupModelStore {
4
+ class IMGroupModelStore {
6
5
  constructor() {
7
- super(...arguments);
8
6
  this.models = new Map();
9
7
  }
10
8
  async getByStreamId(streamId) {
@@ -1,6 +1,6 @@
1
1
  import { GroupTransactionEventStore } from "../..";
2
2
  import { GroupTransactionEvent } from "../..";
3
- export declare class IMGroupTransactionEventStore extends GroupTransactionEventStore {
3
+ export declare class IMGroupTransactionEventStore implements GroupTransactionEventStore {
4
4
  private events;
5
5
  addEvent(event: GroupTransactionEvent): Promise<void>;
6
6
  getEvents(userId: string): GroupTransactionEvent[];
@@ -1 +1 @@
1
- {"version":3,"file":"IMGroupTransactionEventStore.d.ts","sourceRoot":"","sources":["../../../src/__tests__/test-helpers/IMGroupTransactionEventStore.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,0BAA0B,EAAE,MAAM,OAAO,CAAC;AACnD,OAAO,EAAE,qBAAqB,EAAE,MAAM,OAAO,CAAC;AAE9C,qBAAa,4BAA6B,SAAQ,0BAA0B;IACxE,OAAO,CAAC,MAAM,CAAmD;IAE3D,QAAQ,CAAC,KAAK,EAAE,qBAAqB,GAAG,OAAO,CAAC,IAAI,CAAC;IAM3D,SAAS,CAAC,MAAM,EAAE,MAAM,GAAG,qBAAqB,EAAE;IAIlD,KAAK,IAAI,IAAI;CAGhB"}
1
+ {"version":3,"file":"IMGroupTransactionEventStore.d.ts","sourceRoot":"","sources":["../../../src/__tests__/test-helpers/IMGroupTransactionEventStore.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,0BAA0B,EAAE,MAAM,OAAO,CAAC;AACnD,OAAO,EAAE,qBAAqB,EAAE,MAAM,OAAO,CAAC;AAE9C,qBAAa,4BAA6B,YAAW,0BAA0B;IAC3E,OAAO,CAAC,MAAM,CAAmD;IAE3D,QAAQ,CAAC,KAAK,EAAE,qBAAqB,GAAG,OAAO,CAAC,IAAI,CAAC;IAM3D,SAAS,CAAC,MAAM,EAAE,MAAM,GAAG,qBAAqB,EAAE;IAIlD,KAAK,IAAI,IAAI;CAGhB"}
@@ -1,10 +1,8 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.IMGroupTransactionEventStore = void 0;
4
- const __1 = require("../..");
5
- class IMGroupTransactionEventStore extends __1.GroupTransactionEventStore {
4
+ class IMGroupTransactionEventStore {
6
5
  constructor() {
7
- super(...arguments);
8
6
  this.events = new Map();
9
7
  }
10
8
  async addEvent(event) {
@@ -1,6 +1,6 @@
1
1
  import { GroupTransactionModelStore } from "../..";
2
2
  import { GroupTransactionModel } from "../..";
3
- export declare class IMGroupTransactionModelStore extends GroupTransactionModelStore {
3
+ export declare class IMGroupTransactionModelStore implements GroupTransactionModelStore {
4
4
  private models;
5
5
  getByStreamId(streamId: string): Promise<GroupTransactionModel | undefined>;
6
6
  getByStreamIdWhereDeletedIsFalse(streamId: string): Promise<GroupTransactionModel | undefined>;
@@ -1 +1 @@
1
- {"version":3,"file":"IMGroupTransactionModelStore.d.ts","sourceRoot":"","sources":["../../../src/__tests__/test-helpers/IMGroupTransactionModelStore.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,0BAA0B,EAAE,MAAM,OAAO,CAAC;AACnD,OAAO,EAAE,qBAAqB,EAAE,MAAM,OAAO,CAAC;AAE9C,qBAAa,4BAA6B,SAAQ,0BAA0B;IACxE,OAAO,CAAC,MAAM,CAAiD;IAEzD,aAAa,CACf,QAAQ,EAAE,MAAM,GACjB,OAAO,CAAC,qBAAqB,GAAG,SAAS,CAAC;IAKvC,gCAAgC,CAClC,QAAQ,EAAE,MAAM,GACjB,OAAO,CAAC,qBAAqB,GAAG,SAAS,CAAC;IAQvC,iDAAiD,CACnD,OAAO,EAAE,MAAM,EACf,aAAa,EAAE,MAAM,GACtB,OAAO,CAAC,qBAAqB,EAAE,CAAC;IAc7B,4BAA4B,CAC9B,MAAM,EAAE,MAAM,EACd,aAAa,EAAE,MAAM,GACtB,OAAO,CAAC,qBAAqB,GAAG,SAAS,CAAC;IAavC,IAAI,CAAC,KAAK,EAAE,qBAAqB,GAAG,OAAO,CAAC,IAAI,CAAC;IAIvD,MAAM,IAAI,qBAAqB,EAAE;IAIjC,yBAAyB,IAAI,qBAAqB,EAAE;IAMpD,KAAK,IAAI,IAAI;CAGhB"}
1
+ {"version":3,"file":"IMGroupTransactionModelStore.d.ts","sourceRoot":"","sources":["../../../src/__tests__/test-helpers/IMGroupTransactionModelStore.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,0BAA0B,EAAE,MAAM,OAAO,CAAC;AACnD,OAAO,EAAE,qBAAqB,EAAE,MAAM,OAAO,CAAC;AAE9C,qBAAa,4BAA6B,YAAW,0BAA0B;IAC3E,OAAO,CAAC,MAAM,CAAiD;IAEzD,aAAa,CACf,QAAQ,EAAE,MAAM,GACjB,OAAO,CAAC,qBAAqB,GAAG,SAAS,CAAC;IAKvC,gCAAgC,CAClC,QAAQ,EAAE,MAAM,GACjB,OAAO,CAAC,qBAAqB,GAAG,SAAS,CAAC;IAQvC,iDAAiD,CACnD,OAAO,EAAE,MAAM,EACf,aAAa,EAAE,MAAM,GACtB,OAAO,CAAC,qBAAqB,EAAE,CAAC;IAc7B,4BAA4B,CAC9B,MAAM,EAAE,MAAM,EACd,aAAa,EAAE,MAAM,GACtB,OAAO,CAAC,qBAAqB,GAAG,SAAS,CAAC;IAavC,IAAI,CAAC,KAAK,EAAE,qBAAqB,GAAG,OAAO,CAAC,IAAI,CAAC;IAIvD,MAAM,IAAI,qBAAqB,EAAE;IAIjC,yBAAyB,IAAI,qBAAqB,EAAE;IAMpD,KAAK,IAAI,IAAI;CAGhB"}
@@ -1,10 +1,8 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.IMGroupTransactionModelStore = void 0;
4
- const __1 = require("../..");
5
- class IMGroupTransactionModelStore extends __1.GroupTransactionModelStore {
4
+ class IMGroupTransactionModelStore {
6
5
  constructor() {
7
- super(...arguments);
8
6
  this.models = new Map();
9
7
  }
10
8
  async getByStreamId(streamId) {
@@ -1,6 +1,6 @@
1
1
  import { TransactionEventStore } from "../..";
2
2
  import { TransactionEvent } from "../..";
3
- export declare class IMTransactionEventStore extends TransactionEventStore {
3
+ export declare class IMTransactionEventStore implements TransactionEventStore {
4
4
  private events;
5
5
  addEvent(event: TransactionEvent): Promise<void>;
6
6
  getEvents(): TransactionEvent[];
@@ -1 +1 @@
1
- {"version":3,"file":"IMTransactionEventStore.d.ts","sourceRoot":"","sources":["../../../src/__tests__/test-helpers/IMTransactionEventStore.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,qBAAqB,EAAE,MAAM,OAAO,CAAC;AAC9C,OAAO,EAAE,gBAAgB,EAAE,MAAM,OAAO,CAAC;AAEzC,qBAAa,uBAAwB,SAAQ,qBAAqB;IAC9D,OAAO,CAAC,MAAM,CAA0B;IAElC,QAAQ,CAAC,KAAK,EAAE,gBAAgB,GAAG,OAAO,CAAC,IAAI,CAAC;IAItD,SAAS,IAAI,gBAAgB,EAAE;IAI/B,mBAAmB,CAAC,QAAQ,EAAE,MAAM,GAAG,gBAAgB,EAAE;IAIzD,KAAK,IAAI,IAAI;CAGhB"}
1
+ {"version":3,"file":"IMTransactionEventStore.d.ts","sourceRoot":"","sources":["../../../src/__tests__/test-helpers/IMTransactionEventStore.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,qBAAqB,EAAE,MAAM,OAAO,CAAC;AAC9C,OAAO,EAAE,gBAAgB,EAAE,MAAM,OAAO,CAAC;AAEzC,qBAAa,uBAAwB,YAAW,qBAAqB;IACjE,OAAO,CAAC,MAAM,CAA0B;IAElC,QAAQ,CAAC,KAAK,EAAE,gBAAgB,GAAG,OAAO,CAAC,IAAI,CAAC;IAItD,SAAS,IAAI,gBAAgB,EAAE;IAI/B,mBAAmB,CAAC,QAAQ,EAAE,MAAM,GAAG,gBAAgB,EAAE;IAIzD,KAAK,IAAI,IAAI;CAGhB"}
@@ -1,10 +1,8 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.IMTransactionEventStore = void 0;
4
- const __1 = require("../..");
5
- class IMTransactionEventStore extends __1.TransactionEventStore {
4
+ class IMTransactionEventStore {
6
5
  constructor() {
7
- super(...arguments);
8
6
  this.events = [];
9
7
  }
10
8
  async addEvent(event) {
@@ -1,6 +1,6 @@
1
1
  import { TransactionModelStore } from "../..";
2
2
  import { TransactionModel } from "../..";
3
- export declare class IMTransactionModelStore extends TransactionModelStore {
3
+ export declare class IMTransactionModelStore implements TransactionModelStore {
4
4
  private models;
5
5
  getByStreamId(streamId: string): Promise<TransactionModel | undefined>;
6
6
  getByStreamIdWhereDeletedIsFalse(streamId: string): Promise<TransactionModel | undefined>;
@@ -1 +1 @@
1
- {"version":3,"file":"IMTransactionModelStore.d.ts","sourceRoot":"","sources":["../../../src/__tests__/test-helpers/IMTransactionModelStore.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,qBAAqB,EAAE,MAAM,OAAO,CAAC;AAC9C,OAAO,EAAE,gBAAgB,EAAE,MAAM,OAAO,CAAC;AAEzC,qBAAa,uBAAwB,SAAQ,qBAAqB;IAC9D,OAAO,CAAC,MAAM,CAA4C;IAEpD,aAAa,CACf,QAAQ,EAAE,MAAM,GACjB,OAAO,CAAC,gBAAgB,GAAG,SAAS,CAAC;IAKlC,gCAAgC,CAClC,QAAQ,EAAE,MAAM,GACjB,OAAO,CAAC,gBAAgB,GAAG,SAAS,CAAC;IAQlC,iCAAiC,CACnC,MAAM,EAAE,MAAM,EACd,eAAe,EAAE,MAAM,EACvB,oBAAoB,EAAE,MAAM,GAC7B,OAAO,CAAC,gBAAgB,GAAG,SAAS,CAAC;IAclC,wBAAwB,CAC1B,MAAM,EAAE,MAAM,EACd,kBAAkB,EAAE,MAAM,GAC3B,OAAO,CAAC,gBAAgB,EAAE,CAAC;IAcxB,IAAI,CAAC,KAAK,EAAE,gBAAgB,GAAG,OAAO,CAAC,IAAI,CAAC;IAIlD,MAAM,IAAI,gBAAgB,EAAE;IAI5B,yBAAyB,IAAI,gBAAgB,EAAE;IAM/C,KAAK,IAAI,IAAI;CAGhB"}
1
+ {"version":3,"file":"IMTransactionModelStore.d.ts","sourceRoot":"","sources":["../../../src/__tests__/test-helpers/IMTransactionModelStore.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,qBAAqB,EAAE,MAAM,OAAO,CAAC;AAC9C,OAAO,EAAE,gBAAgB,EAAE,MAAM,OAAO,CAAC;AAEzC,qBAAa,uBAAwB,YAAW,qBAAqB;IACjE,OAAO,CAAC,MAAM,CAA4C;IAEpD,aAAa,CACf,QAAQ,EAAE,MAAM,GACjB,OAAO,CAAC,gBAAgB,GAAG,SAAS,CAAC;IAKlC,gCAAgC,CAClC,QAAQ,EAAE,MAAM,GACjB,OAAO,CAAC,gBAAgB,GAAG,SAAS,CAAC;IAQlC,iCAAiC,CACnC,MAAM,EAAE,MAAM,EACd,eAAe,EAAE,MAAM,EACvB,oBAAoB,EAAE,MAAM,GAC7B,OAAO,CAAC,gBAAgB,GAAG,SAAS,CAAC;IAclC,wBAAwB,CAC1B,MAAM,EAAE,MAAM,EACd,kBAAkB,EAAE,MAAM,GAC3B,OAAO,CAAC,gBAAgB,EAAE,CAAC;IAcxB,IAAI,CAAC,KAAK,EAAE,gBAAgB,GAAG,OAAO,CAAC,IAAI,CAAC;IAIlD,MAAM,IAAI,gBAAgB,EAAE;IAI5B,yBAAyB,IAAI,gBAAgB,EAAE;IAM/C,KAAK,IAAI,IAAI;CAGhB"}
@@ -1,10 +1,8 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.IMTransactionModelStore = void 0;
4
- const __1 = require("../..");
5
- class IMTransactionModelStore extends __1.TransactionModelStore {
4
+ class IMTransactionModelStore {
6
5
  constructor() {
7
- super(...arguments);
8
6
  this.models = new Map();
9
7
  }
10
8
  async getByStreamId(streamId) {
@@ -1,6 +1,6 @@
1
1
  import { UserEventStore } from "../..";
2
2
  import { UserEvent } from "../..";
3
- export declare class IMUserEventStore extends UserEventStore {
3
+ export declare class IMUserEventStore implements UserEventStore {
4
4
  private events;
5
5
  addEvent(event: UserEvent): Promise<void>;
6
6
  getEvents(): UserEvent[];