@zeeshan60/event-processor 1.0.23 → 1.0.25

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 (43) hide show
  1. package/dist/ActivityEventHandler.d.ts +3 -1
  2. package/dist/ActivityEventHandler.d.ts.map +1 -1
  3. package/dist/ActivityEventHandler.js +19 -13
  4. package/dist/ActivityEventHandler.js.map +1 -1
  5. package/dist/BaseEventHandler.d.ts +2 -1
  6. package/dist/BaseEventHandler.d.ts.map +1 -1
  7. package/dist/BaseEventHandler.js +3 -3
  8. package/dist/BaseEventHandler.js.map +1 -1
  9. package/dist/FriendEventHandler.d.ts +3 -1
  10. package/dist/FriendEventHandler.d.ts.map +1 -1
  11. package/dist/FriendEventHandler.js +22 -15
  12. package/dist/FriendEventHandler.js.map +1 -1
  13. package/dist/GroupEventHandler.d.ts +2 -0
  14. package/dist/GroupEventHandler.d.ts.map +1 -1
  15. package/dist/GroupEventHandler.js +29 -23
  16. package/dist/GroupEventHandler.js.map +1 -1
  17. package/dist/GroupTransactionEventHandler.d.ts +2 -0
  18. package/dist/GroupTransactionEventHandler.d.ts.map +1 -1
  19. package/dist/GroupTransactionEventHandler.js +29 -16
  20. package/dist/GroupTransactionEventHandler.js.map +1 -1
  21. package/dist/TransactionEventHandler.d.ts +3 -1
  22. package/dist/TransactionEventHandler.d.ts.map +1 -1
  23. package/dist/TransactionEventHandler.js +101 -46
  24. package/dist/TransactionEventHandler.js.map +1 -1
  25. package/dist/UserEventHandler.d.ts +3 -1
  26. package/dist/UserEventHandler.d.ts.map +1 -1
  27. package/dist/UserEventHandler.js +30 -22
  28. package/dist/UserEventHandler.js.map +1 -1
  29. package/dist/__tests__/test-helpers/IMTransactionEventStore.d.ts +1 -0
  30. package/dist/__tests__/test-helpers/IMTransactionEventStore.d.ts.map +1 -1
  31. package/dist/__tests__/test-helpers/IMTransactionEventStore.js +3 -0
  32. package/dist/__tests__/test-helpers/IMTransactionEventStore.js.map +1 -1
  33. package/dist/store/TransactionEventStore.d.ts +1 -0
  34. package/dist/store/TransactionEventStore.d.ts.map +1 -1
  35. package/package.json +1 -1
  36. package/dist/errors/RetryError.d.ts +0 -6
  37. package/dist/errors/RetryError.d.ts.map +0 -1
  38. package/dist/errors/RetryError.js +0 -13
  39. package/dist/errors/RetryError.js.map +0 -1
  40. package/dist/utils/tryLater.d.ts +0 -12
  41. package/dist/utils/tryLater.d.ts.map +0 -1
  42. package/dist/utils/tryLater.js +0 -27
  43. package/dist/utils/tryLater.js.map +0 -1
@@ -17,21 +17,23 @@ class GroupTransactionEventHandler extends BaseEventHandler_1.BaseEventHandler {
17
17
  }
18
18
  async handleClientEventFromRemoteListener(event) {
19
19
  const existingModel = await this.modelStore.getByStreamId(event.streamId);
20
- const updatedModel = event.apply(existingModel);
21
- if (!this.shouldSkipSave(existingModel, updatedModel)) {
22
- await this.modelStore.save(updatedModel);
23
- this.modelChangeEmitter?.emit("GroupTransactionModel", updatedModel);
20
+ if (this.shouldSkipSave(existingModel, event)) {
21
+ return;
24
22
  }
23
+ const updatedModel = event.apply(existingModel);
24
+ await this.modelStore.save(updatedModel);
25
+ this.modelChangeEmitter?.emit("GroupTransactionModel", updatedModel);
25
26
  }
26
27
  async handleClientEventsFromRemoteListenerBulk(events) {
27
28
  const updatedModels = [];
28
29
  for (const event of events) {
29
30
  const existingModel = await this.modelStore.getByStreamId(event.streamId);
30
- const updatedModel = event.apply(existingModel);
31
- if (!this.shouldSkipSave(existingModel, updatedModel)) {
32
- await this.modelStore.save(updatedModel);
33
- updatedModels.push(updatedModel);
31
+ if (this.shouldSkipSave(existingModel, event)) {
32
+ continue;
34
33
  }
34
+ const updatedModel = event.apply(existingModel);
35
+ await this.modelStore.save(updatedModel);
36
+ updatedModels.push(updatedModel);
35
37
  }
36
38
  if (this.modelChangeEmitter && updatedModels.length > 0) {
37
39
  for (const model of updatedModels) {
@@ -39,6 +41,9 @@ class GroupTransactionEventHandler extends BaseEventHandler_1.BaseEventHandler {
39
41
  }
40
42
  }
41
43
  }
44
+ async handleBackendEvent(event, context) {
45
+ return this.handleEvent(event);
46
+ }
42
47
  async handleEvent(event) {
43
48
  if (this.isClient) {
44
49
  await this.eventStore.addEvent(event);
@@ -55,11 +60,15 @@ class GroupTransactionEventHandler extends BaseEventHandler_1.BaseEventHandler {
55
60
  }
56
61
  async handleGroupTransactionCreated(event) {
57
62
  const existingModel = await this.modelStore.getByStreamIdWhereDeletedIsFalse(event.streamId);
58
- const updatedModel = event.apply(existingModel);
59
- if (!this.shouldSkipSave(existingModel, updatedModel)) {
60
- await this.modelStore.save(updatedModel);
61
- this.modelChangeEmitter?.emit("GroupTransactionModel", updatedModel);
63
+ if (this.shouldSkipSave(existingModel, event)) {
64
+ if (this.activityEventHandler) {
65
+ await this.activityEventHandler.createActivityLog(event, existingModel, existingModel);
66
+ }
67
+ return existingModel;
62
68
  }
69
+ const updatedModel = event.apply(existingModel);
70
+ await this.modelStore.save(updatedModel);
71
+ this.modelChangeEmitter?.emit("GroupTransactionModel", updatedModel);
63
72
  if (this.activityEventHandler) {
64
73
  await this.activityEventHandler.createActivityLog(event, existingModel, updatedModel);
65
74
  }
@@ -70,11 +79,15 @@ class GroupTransactionEventHandler extends BaseEventHandler_1.BaseEventHandler {
70
79
  if (!existingModel) {
71
80
  throw new Error("GroupTransaction must exist to change split details");
72
81
  }
73
- const updatedModel = event.apply(existingModel);
74
- if (!this.shouldSkipSave(existingModel, updatedModel)) {
75
- await this.modelStore.save(updatedModel);
76
- this.modelChangeEmitter?.emit("GroupTransactionModel", updatedModel);
82
+ if (this.shouldSkipSave(existingModel, event)) {
83
+ if (this.activityEventHandler) {
84
+ await this.activityEventHandler.createActivityLog(event, existingModel, existingModel);
85
+ }
86
+ return existingModel;
77
87
  }
88
+ const updatedModel = event.apply(existingModel);
89
+ await this.modelStore.save(updatedModel);
90
+ this.modelChangeEmitter?.emit("GroupTransactionModel", updatedModel);
78
91
  if (this.activityEventHandler) {
79
92
  await this.activityEventHandler.createActivityLog(event, existingModel, updatedModel);
80
93
  }
@@ -1 +1 @@
1
- {"version":3,"file":"GroupTransactionEventHandler.js","sourceRoot":"","sources":["../src/GroupTransactionEventHandler.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"GroupTransactionEventHandler.js","sourceRoot":"","sources":["../src/GroupTransactionEventHandler.ts"],"names":[],"mappings":"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"}
@@ -2,6 +2,7 @@ import { TransactionEvent, TransactionEventStore, TransactionModel, TransactionM
2
2
  import { BaseEventHandler } from "./BaseEventHandler";
3
3
  import { ActivityEventHandler } from "./ActivityEventHandler";
4
4
  import { ModelChangeEmitter } from "./ModelChangeEmitter";
5
+ import { LoggingContext } from "./common/LoggingContext";
5
6
  export declare class TransactionEventHandler extends BaseEventHandler<TransactionEvent> {
6
7
  private modelStore;
7
8
  private eventStore;
@@ -10,7 +11,8 @@ export declare class TransactionEventHandler extends BaseEventHandler<Transactio
10
11
  getModelStore(): TransactionModelStore;
11
12
  handleClientEventFromRemoteListener(event: TransactionEvent): Promise<void>;
12
13
  handleClientEventsFromRemoteListenerBulk(events: TransactionEvent[]): Promise<void>;
13
- handleEvent(event: TransactionEvent, context?: import("./common/LoggingContext").LoggingContext): Promise<TransactionModel>;
14
+ handleBackendEvent(event: TransactionEvent, context?: LoggingContext): Promise<TransactionModel>;
15
+ handleEvent(event: TransactionEvent, context?: LoggingContext): Promise<TransactionModel>;
14
16
  private createMirrorEvent;
15
17
  }
16
18
  //# sourceMappingURL=TransactionEventHandler.d.ts.map
@@ -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,EACxB,MAAM,GAAG,CAAC;AACX,OAAO,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AACtD,OAAO,EAAE,oBAAoB,EAAE,MAAM,wBAAwB,CAAC;AAM9D,OAAO,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AAE1D,qBAAa,uBAAwB,SAAQ,gBAAgB,CAAC,gBAAgB,CAAC;IAEvE,OAAO,CAAC,UAAU;IAClB,OAAO,CAAC,UAAU;IAGlB,OAAO,CAAC,oBAAoB,CAAC;gBAJrB,UAAU,EAAE,qBAAqB,EACjC,UAAU,EAAE,qBAAqB,EACzC,QAAQ,EAAE,OAAO,EACjB,kBAAkB,CAAC,EAAE,kBAAkB,EAC/B,oBAAoB,CAAC,EAAE,oBAAoB,YAAA;IAKhD,aAAa,IAAI,qBAAqB;IAIhC,mCAAmC,CAC5C,KAAK,EAAE,gBAAgB,GACxB,OAAO,CAAC,IAAI,CAAC;IAWH,wCAAwC,CACjD,MAAM,EAAE,gBAAgB,EAAE,GAC3B,OAAO,CAAC,IAAI,CAAC;IAqBV,WAAW,CAAC,KAAK,EAAE,gBAAgB,EAAE,OAAO,CAAC,EAAE,OAAO,yBAAyB,EAAE,cAAc,GAAG,OAAO,CAAC,gBAAgB,CAAC;YAuEnH,iBAAiB;CA0MlC"}
1
+ {"version":3,"file":"TransactionEventHandler.d.ts","sourceRoot":"","sources":["../src/TransactionEventHandler.ts"],"names":[],"mappings":"AAAA,OAAO,EASH,gBAAgB,EAChB,qBAAqB,EACrB,gBAAgB,EAChB,qBAAqB,EACxB,MAAM,GAAG,CAAC;AACX,OAAO,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AACtD,OAAO,EAAE,oBAAoB,EAAE,MAAM,wBAAwB,CAAC;AAM9D,OAAO,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AAC1D,OAAO,EAAE,cAAc,EAAE,MAAM,yBAAyB,CAAC;AAEzD,qBAAa,uBAAwB,SAAQ,gBAAgB,CAAC,gBAAgB,CAAC;IAEvE,OAAO,CAAC,UAAU;IAClB,OAAO,CAAC,UAAU;IAGlB,OAAO,CAAC,oBAAoB,CAAC;gBAJrB,UAAU,EAAE,qBAAqB,EACjC,UAAU,EAAE,qBAAqB,EACzC,QAAQ,EAAE,OAAO,EACjB,kBAAkB,CAAC,EAAE,kBAAkB,EAC/B,oBAAoB,CAAC,EAAE,oBAAoB,YAAA;IAKhD,aAAa,IAAI,qBAAqB;IAIhC,mCAAmC,CAC5C,KAAK,EAAE,gBAAgB,GACxB,OAAO,CAAC,IAAI,CAAC;IAYH,wCAAwC,CACjD,MAAM,EAAE,gBAAgB,EAAE,GAC3B,OAAO,CAAC,IAAI,CAAC;IAsBV,kBAAkB,CACpB,KAAK,EAAE,gBAAgB,EACvB,OAAO,CAAC,EAAE,cAAc,GACzB,OAAO,CAAC,gBAAgB,CAAC;IAqEtB,WAAW,CAAC,KAAK,EAAE,gBAAgB,EAAE,OAAO,CAAC,EAAE,cAAc,GAAG,OAAO,CAAC,gBAAgB,CAAC;YAwEjF,iBAAiB;CA0MlC"}
@@ -17,21 +17,23 @@ class TransactionEventHandler extends BaseEventHandler_1.BaseEventHandler {
17
17
  }
18
18
  async handleClientEventFromRemoteListener(event) {
19
19
  const existingModel = await this.modelStore.getByStreamId(event.streamId);
20
- const model = event.apply(existingModel);
21
- if (!this.shouldSkipSave(existingModel, model)) {
22
- await this.modelStore.save(model);
23
- this.modelChangeEmitter?.emit("TransactionModel", model);
20
+ if (this.shouldSkipSave(existingModel, event)) {
21
+ return;
24
22
  }
23
+ const model = event.apply(existingModel);
24
+ await this.modelStore.save(model);
25
+ this.modelChangeEmitter?.emit("TransactionModel", model);
25
26
  }
26
27
  async handleClientEventsFromRemoteListenerBulk(events) {
27
28
  const updatedModels = [];
28
29
  for (const event of events) {
29
30
  const existingModel = await this.modelStore.getByStreamId(event.streamId);
30
- const model = event.apply(existingModel);
31
- if (!this.shouldSkipSave(existingModel, model)) {
32
- await this.modelStore.save(model);
33
- updatedModels.push(model);
31
+ if (this.shouldSkipSave(existingModel, event)) {
32
+ continue;
34
33
  }
34
+ const model = event.apply(existingModel);
35
+ await this.modelStore.save(model);
36
+ updatedModels.push(model);
35
37
  }
36
38
  if (this.modelChangeEmitter && updatedModels.length > 0) {
37
39
  for (const model of updatedModels) {
@@ -39,6 +41,61 @@ class TransactionEventHandler extends BaseEventHandler_1.BaseEventHandler {
39
41
  }
40
42
  }
41
43
  }
44
+ async handleBackendEvent(event, context) {
45
+ const logData = {
46
+ requestId: context?.requestId,
47
+ streamId: event.streamId,
48
+ triggerEventVersion: event.version,
49
+ };
50
+ context?.logger?.info("[TransactionEventHandler] handleBackendEvent started", logData);
51
+ const events = await this.eventStore.getAllEventsByStreamId(event.streamId);
52
+ events.sort((a, b) => a.version - b.version);
53
+ context?.logger?.info("[TransactionEventHandler] Retrieved and sorted events", {
54
+ ...logData,
55
+ totalEvents: events.length,
56
+ });
57
+ const existingModel = await this.modelStore.getByStreamIdWhereDeletedIsFalse(event.streamId);
58
+ const currentVersion = existingModel?.version ?? 0;
59
+ context?.logger?.info("[TransactionEventHandler] Current model state", {
60
+ ...logData,
61
+ currentVersion,
62
+ modelExists: !!existingModel,
63
+ });
64
+ const eventsToProcess = events.filter(e => e.version > currentVersion);
65
+ if (eventsToProcess.length === 0) {
66
+ context?.logger?.info("[TransactionEventHandler] No new events to process", {
67
+ ...logData,
68
+ currentVersion,
69
+ });
70
+ return existingModel;
71
+ }
72
+ let lastProcessedVersion = currentVersion;
73
+ let finalModel = existingModel;
74
+ for (const evt of eventsToProcess) {
75
+ if (evt.version !== lastProcessedVersion + 1) {
76
+ context?.logger?.warn("[TransactionEventHandler] Version gap detected, stopping", {
77
+ ...logData,
78
+ expectedVersion: lastProcessedVersion + 1,
79
+ actualVersion: evt.version,
80
+ lastProcessedVersion,
81
+ });
82
+ break;
83
+ }
84
+ context?.logger?.info("[TransactionEventHandler] Processing event", {
85
+ ...logData,
86
+ eventVersion: evt.version,
87
+ eventType: evt.constructor.name,
88
+ });
89
+ finalModel = await this.handleEvent(evt, context);
90
+ lastProcessedVersion = evt.version;
91
+ }
92
+ context?.logger?.info("[TransactionEventHandler] handleBackendEvent completed", {
93
+ ...logData,
94
+ finalVersion: lastProcessedVersion,
95
+ eventsProcessed: lastProcessedVersion - currentVersion,
96
+ });
97
+ return finalModel ?? existingModel;
98
+ }
42
99
  async handleEvent(event, context) {
43
100
  const eventType = event.constructor.name;
44
101
  const logData = {
@@ -56,40 +113,39 @@ class TransactionEventHandler extends BaseEventHandler_1.BaseEventHandler {
56
113
  existingModelFound: !!existingModel,
57
114
  existingModelVersion: existingModel?.version,
58
115
  });
116
+ if (this.shouldSkipSave(existingModel, event)) {
117
+ context?.logger?.warn("[TransactionEventHandler] Skipping save due to version conflict", {
118
+ ...logData,
119
+ existingVersion: existingModel?.version,
120
+ eventVersion: event.version,
121
+ });
122
+ context?.logger?.info("[TransactionEventHandler] Event processing completed", logData);
123
+ return existingModel;
124
+ }
59
125
  const model = event.apply(existingModel);
60
126
  context?.logger?.info("[TransactionEventHandler] Event applied to model", {
61
127
  ...logData,
62
128
  newModelVersion: model.version,
63
- shouldSkipSave: this.shouldSkipSave(existingModel, model),
64
129
  });
65
- if (!this.shouldSkipSave(existingModel, model)) {
66
- await this.modelStore.save(model);
67
- context?.logger?.info("[TransactionEventHandler] Model saved successfully", {
68
- ...logData,
69
- modelVersion: model.version,
70
- isClient: this.isClient,
71
- });
72
- if (this.isClient) {
73
- await this.eventStore.addEvent(event);
74
- this.modelChangeEmitter?.emit("TransactionModel", model);
75
- if (this.activityEventHandler) {
76
- await this.activityEventHandler.createActivityLog(event, existingModel, model);
77
- }
78
- }
79
- else {
80
- context?.logger?.info("[TransactionEventHandler] Creating mirror event", {
81
- ...logData,
82
- recipientUserId: model.recipientUserId,
83
- });
84
- await this.createMirrorEvent(event, model, context);
130
+ await this.modelStore.save(model);
131
+ context?.logger?.info("[TransactionEventHandler] Model saved successfully", {
132
+ ...logData,
133
+ modelVersion: model.version,
134
+ isClient: this.isClient,
135
+ });
136
+ if (this.isClient) {
137
+ await this.eventStore.addEvent(event);
138
+ this.modelChangeEmitter?.emit("TransactionModel", model);
139
+ if (this.activityEventHandler) {
140
+ await this.activityEventHandler.createActivityLog(event, existingModel, model);
85
141
  }
86
142
  }
87
143
  else {
88
- context?.logger?.warn("[TransactionEventHandler] Skipping save due to version conflict", {
144
+ context?.logger?.info("[TransactionEventHandler] Creating mirror event", {
89
145
  ...logData,
90
- existingVersion: existingModel?.version,
91
- newVersion: model.version,
146
+ recipientUserId: model.recipientUserId,
92
147
  });
148
+ await this.createMirrorEvent(event, model, context);
93
149
  }
94
150
  context?.logger?.info("[TransactionEventHandler] Event processing completed", logData);
95
151
  return model;
@@ -234,25 +290,24 @@ class TransactionEventHandler extends BaseEventHandler_1.BaseEventHandler {
234
290
  recipientUserId: transactionModel.recipientUserId,
235
291
  });
236
292
  await this.eventStore.addEvent(mirrorEvent);
237
- const updatedModel = mirrorEvent.apply(existingMirrorModel);
238
- if (!this.shouldSkipSave(existingMirrorModel, updatedModel)) {
239
- await this.modelStore.save(updatedModel);
240
- context?.logger?.info("[TransactionEventHandler] Mirror model saved successfully", {
241
- requestId: context?.requestId,
242
- mirrorStreamId,
243
- mirrorVersion: updatedModel.version,
244
- });
245
- if (this.activityEventHandler) {
246
- await this.activityEventHandler.createActivityLog(mirrorEvent, existingMirrorModel, updatedModel);
247
- }
248
- }
249
- else {
293
+ if (this.shouldSkipSave(existingMirrorModel, mirrorEvent)) {
250
294
  context?.logger?.warn("[TransactionEventHandler] Skipping mirror save due to version conflict", {
251
295
  requestId: context?.requestId,
252
296
  mirrorStreamId,
253
297
  existingVersion: existingMirrorModel?.version,
254
- newVersion: updatedModel.version,
298
+ eventVersion: mirrorEvent.version,
255
299
  });
300
+ return;
301
+ }
302
+ const updatedModel = mirrorEvent.apply(existingMirrorModel);
303
+ await this.modelStore.save(updatedModel);
304
+ context?.logger?.info("[TransactionEventHandler] Mirror model saved successfully", {
305
+ requestId: context?.requestId,
306
+ mirrorStreamId,
307
+ mirrorVersion: updatedModel.version,
308
+ });
309
+ if (this.activityEventHandler) {
310
+ await this.activityEventHandler.createActivityLog(mirrorEvent, existingMirrorModel, updatedModel);
256
311
  }
257
312
  }
258
313
  }
@@ -1 +1 @@
1
- {"version":3,"file":"TransactionEventHandler.js","sourceRoot":"","sources":["../src/TransactionEventHandler.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"TransactionEventHandler.js","sourceRoot":"","sources":["../src/TransactionEventHandler.ts"],"names":[],"mappings":"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"}
@@ -2,6 +2,7 @@ import { UserCreated, UserEvent, UserEventStore, UserModel, UserModelStore } fro
2
2
  import { BaseEventHandler } from "./BaseEventHandler";
3
3
  import { ActivityEventHandler } from "./ActivityEventHandler";
4
4
  import { ModelChangeEmitter } from "./ModelChangeEmitter";
5
+ import { LoggingContext } from "./common/LoggingContext";
5
6
  export declare class UserEventHandler extends BaseEventHandler<UserEvent> {
6
7
  private modelStore;
7
8
  private eventStore;
@@ -10,7 +11,8 @@ export declare class UserEventHandler extends BaseEventHandler<UserEvent> {
10
11
  getModelStore(): UserModelStore;
11
12
  handleClientEventFromRemoteListener(event: UserEvent): Promise<void>;
12
13
  handleClientEventsFromRemoteListenerBulk(events: UserEvent[]): Promise<void>;
13
- handleEvent(event: UserEvent, context?: import("./common/LoggingContext").LoggingContext): Promise<UserModel>;
14
+ handleBackendEvent(event: UserEvent, context?: LoggingContext): Promise<UserModel>;
15
+ handleEvent(event: UserEvent, context?: LoggingContext): Promise<UserModel>;
14
16
  handleUserCreatedBackend(event: UserCreated): Promise<UserModel>;
15
17
  }
16
18
  //# sourceMappingURL=UserEventHandler.d.ts.map
@@ -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,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AACtD,OAAO,EAAE,oBAAoB,EAAE,MAAM,wBAAwB,CAAC;AAE9D,OAAO,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AAE1D,qBAAa,gBAAiB,SAAQ,gBAAgB,CAAC,SAAS,CAAC;IAEzD,OAAO,CAAC,UAAU;IAClB,OAAO,CAAC,UAAU;IAGlB,OAAO,CAAC,oBAAoB,CAAC;gBAJrB,UAAU,EAAE,cAAc,EAC1B,UAAU,EAAE,cAAc,EAClC,QAAQ,EAAE,OAAO,EACjB,kBAAkB,CAAC,EAAE,kBAAkB,EAC/B,oBAAoB,CAAC,EAAE,oBAAoB,YAAA;IAKhD,aAAa,IAAI,cAAc;IAIzB,mCAAmC,CAC5C,KAAK,EAAE,SAAS,GACjB,OAAO,CAAC,IAAI,CAAC;IAWH,wCAAwC,CACjD,MAAM,EAAE,SAAS,EAAE,GACpB,OAAO,CAAC,IAAI,CAAC;IAqBV,WAAW,CAAC,KAAK,EAAE,SAAS,EAAE,OAAO,CAAC,EAAE,OAAO,yBAAyB,EAAE,cAAc,GAAG,OAAO,CAAC,SAAS,CAAC;IA6B7G,wBAAwB,CAAC,KAAK,EAAE,WAAW,GAAG,OAAO,CAAC,SAAS,CAAC;CAuDzE"}
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,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AACtD,OAAO,EAAE,oBAAoB,EAAE,MAAM,wBAAwB,CAAC;AAE9D,OAAO,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AAC1D,OAAO,EAAE,cAAc,EAAE,MAAM,yBAAyB,CAAC;AAEzD,qBAAa,gBAAiB,SAAQ,gBAAgB,CAAC,SAAS,CAAC;IAEzD,OAAO,CAAC,UAAU;IAClB,OAAO,CAAC,UAAU;IAGlB,OAAO,CAAC,oBAAoB,CAAC;gBAJrB,UAAU,EAAE,cAAc,EAC1B,UAAU,EAAE,cAAc,EAClC,QAAQ,EAAE,OAAO,EACjB,kBAAkB,CAAC,EAAE,kBAAkB,EAC/B,oBAAoB,CAAC,EAAE,oBAAoB,YAAA;IAKhD,aAAa,IAAI,cAAc;IAIzB,mCAAmC,CAC5C,KAAK,EAAE,SAAS,GACjB,OAAO,CAAC,IAAI,CAAC;IAYH,wCAAwC,CACjD,MAAM,EAAE,SAAS,EAAE,GACpB,OAAO,CAAC,IAAI,CAAC;IAsBV,kBAAkB,CACpB,KAAK,EAAE,SAAS,EAChB,OAAO,CAAC,EAAE,cAAc,GACzB,OAAO,CAAC,SAAS,CAAC;IAIf,WAAW,CAAC,KAAK,EAAE,SAAS,EAAE,OAAO,CAAC,EAAE,cAAc,GAAG,OAAO,CAAC,SAAS,CAAC;IA8B3E,wBAAwB,CAAC,KAAK,EAAE,WAAW,GAAG,OAAO,CAAC,SAAS,CAAC;CAyDzE"}
@@ -16,21 +16,23 @@ class UserEventHandler extends BaseEventHandler_1.BaseEventHandler {
16
16
  }
17
17
  async handleClientEventFromRemoteListener(event) {
18
18
  const existingModel = await this.modelStore.getByStreamId(event.streamId);
19
- const updatedModel = event.apply(existingModel);
20
- if (!this.shouldSkipSave(existingModel, updatedModel)) {
21
- await this.modelStore.save(updatedModel);
22
- this.modelChangeEmitter?.emit("UserModel", updatedModel);
19
+ if (this.shouldSkipSave(existingModel, event)) {
20
+ return;
23
21
  }
22
+ const updatedModel = event.apply(existingModel);
23
+ await this.modelStore.save(updatedModel);
24
+ this.modelChangeEmitter?.emit("UserModel", updatedModel);
24
25
  }
25
26
  async handleClientEventsFromRemoteListenerBulk(events) {
26
27
  const updatedModels = [];
27
28
  for (const event of events) {
28
29
  const existingModel = await this.modelStore.getByStreamId(event.streamId);
29
- const updatedModel = event.apply(existingModel);
30
- if (!this.shouldSkipSave(existingModel, updatedModel)) {
31
- await this.modelStore.save(updatedModel);
32
- updatedModels.push(updatedModel);
30
+ if (this.shouldSkipSave(existingModel, event)) {
31
+ continue;
33
32
  }
33
+ const updatedModel = event.apply(existingModel);
34
+ await this.modelStore.save(updatedModel);
35
+ updatedModels.push(updatedModel);
34
36
  }
35
37
  if (this.modelChangeEmitter && updatedModels.length > 0) {
36
38
  for (const model of updatedModels) {
@@ -38,6 +40,9 @@ class UserEventHandler extends BaseEventHandler_1.BaseEventHandler {
38
40
  }
39
41
  }
40
42
  }
43
+ async handleBackendEvent(event, context) {
44
+ return this.handleEvent(event, context);
45
+ }
41
46
  async handleEvent(event, context) {
42
47
  const eventType = event.constructor.name;
43
48
  if (eventType === "UserCreated") {
@@ -45,15 +50,16 @@ class UserEventHandler extends BaseEventHandler_1.BaseEventHandler {
45
50
  }
46
51
  else {
47
52
  const existingModel = await this.modelStore.getByStreamIdWhereDeletedIsFalse(event.streamId);
53
+ if (this.shouldSkipSave(existingModel, event)) {
54
+ return existingModel;
55
+ }
48
56
  const updatedModel = event.apply(existingModel);
49
- if (!this.shouldSkipSave(existingModel, updatedModel)) {
50
- await this.modelStore.save(updatedModel);
51
- if (this.isClient) {
52
- await this.eventStore.addEvent(event);
53
- this.modelChangeEmitter?.emit("UserModel", updatedModel);
54
- if (this.activityEventHandler) {
55
- await this.activityEventHandler.createActivityLog(event, existingModel, updatedModel);
56
- }
57
+ await this.modelStore.save(updatedModel);
58
+ if (this.isClient) {
59
+ await this.eventStore.addEvent(event);
60
+ this.modelChangeEmitter?.emit("UserModel", updatedModel);
61
+ if (this.activityEventHandler) {
62
+ await this.activityEventHandler.createActivityLog(event, existingModel, updatedModel);
57
63
  }
58
64
  }
59
65
  return updatedModel;
@@ -87,18 +93,20 @@ class UserEventHandler extends BaseEventHandler_1.BaseEventHandler {
87
93
  systemGenerated: event.systemGenerated,
88
94
  });
89
95
  await this.eventStore.addEvent(mergeEvent);
90
- const updatedModel = mergeEvent.apply(placeholderUser);
91
- if (!this.shouldSkipSave(placeholderUser, updatedModel)) {
92
- await this.modelStore.save(updatedModel);
96
+ if (this.shouldSkipSave(placeholderUser, mergeEvent)) {
97
+ return placeholderUser;
93
98
  }
99
+ const updatedModel = mergeEvent.apply(placeholderUser);
100
+ await this.modelStore.save(updatedModel);
94
101
  return updatedModel;
95
102
  }
96
103
  await this.eventStore.addEvent(event);
97
104
  const existingModel = await this.modelStore.getByStreamIdWhereDeletedIsFalse(event.streamId);
98
- const updatedModel = event.apply(existingModel);
99
- if (!this.shouldSkipSave(existingModel, updatedModel)) {
100
- await this.modelStore.save(updatedModel);
105
+ if (this.shouldSkipSave(existingModel, event)) {
106
+ return existingModel;
101
107
  }
108
+ const updatedModel = event.apply(existingModel);
109
+ await this.modelStore.save(updatedModel);
102
110
  return updatedModel;
103
111
  }
104
112
  }
@@ -1 +1 @@
1
- {"version":3,"file":"UserEventHandler.js","sourceRoot":"","sources":["../src/UserEventHandler.ts"],"names":[],"mappings":";;;AAAA,wBAQW;AACX,yDAAsD;AAEtD,+BAAoC;AAGpC,MAAa,gBAAiB,SAAQ,mCAA2B;IAC7D,YACY,UAA0B,EAC1B,UAA0B,EAClC,QAAiB,EACjB,kBAAuC,EAC/B,oBAA2C;QAEnD,KAAK,CAAC,QAAQ,EAAE,kBAAkB,CAAC,CAAC;QAN5B,eAAU,GAAV,UAAU,CAAgB;QAC1B,eAAU,GAAV,UAAU,CAAgB;QAG1B,yBAAoB,GAApB,oBAAoB,CAAuB;IAGvD,CAAC;IAEM,aAAa;QAChB,OAAO,IAAI,CAAC,UAAU,CAAC;IAC3B,CAAC;IAEM,KAAK,CAAC,mCAAmC,CAC5C,KAAgB;QAEhB,MAAM,aAAa,GAAG,MAAM,IAAI,CAAC,UAAU,CAAC,aAAa,CACrD,KAAK,CAAC,QAAQ,CACjB,CAAC;QACF,MAAM,YAAY,GAAG,KAAK,CAAC,KAAK,CAAC,aAAa,CAAc,CAAC;QAC7D,IAAI,CAAC,IAAI,CAAC,cAAc,CAAC,aAAa,EAAE,YAAY,CAAC,EAAE,CAAC;YACpD,MAAM,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;YACzC,IAAI,CAAC,kBAAkB,EAAE,IAAI,CAAC,WAAW,EAAE,YAAY,CAAC,CAAC;QAC7D,CAAC;IACL,CAAC;IAEM,KAAK,CAAC,wCAAwC,CACjD,MAAmB;QAEnB,MAAM,aAAa,GAAgB,EAAE,CAAC;QAEtC,KAAK,MAAM,KAAK,IAAI,MAAM,EAAE,CAAC;YACzB,MAAM,aAAa,GAAG,MAAM,IAAI,CAAC,UAAU,CAAC,aAAa,CACrD,KAAK,CAAC,QAAQ,CACjB,CAAC;YACF,MAAM,YAAY,GAAG,KAAK,CAAC,KAAK,CAAC,aAAa,CAAc,CAAC;YAC7D,IAAI,CAAC,IAAI,CAAC,cAAc,CAAC,aAAa,EAAE,YAAY,CAAC,EAAE,CAAC;gBACpD,MAAM,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;gBACzC,aAAa,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;YACrC,CAAC;QACL,CAAC;QAED,IAAI,IAAI,CAAC,kBAAkB,IAAI,aAAa,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YACtD,KAAK,MAAM,KAAK,IAAI,aAAa,EAAE,CAAC;gBAChC,IAAI,CAAC,kBAAkB,CAAC,IAAI,CAAC,WAAW,EAAE,KAAK,CAAC,CAAC;YACrD,CAAC;QACL,CAAC;IACL,CAAC;IAED,KAAK,CAAC,WAAW,CAAC,KAAgB,EAAE,OAA0D;QAC1F,MAAM,SAAS,GAAG,KAAK,CAAC,WAAW,CAAC,IAAI,CAAC;QAEzC,IAAI,SAAS,KAAK,aAAa,EAAE,CAAC;YAC9B,OAAO,MAAM,IAAI,CAAC,wBAAwB,CAAC,KAAoB,CAAC,CAAC;QACrE,CAAC;aAAM,CAAC;YACJ,MAAM,aAAa,GACf,MAAM,IAAI,CAAC,UAAU,CAAC,gCAAgC,CAClD,KAAK,CAAC,QAAQ,CACjB,CAAC;YACN,MAAM,YAAY,GAAG,KAAK,CAAC,KAAK,CAAC,aAAa,CAAc,CAAC;YAC7D,IAAI,CAAC,IAAI,CAAC,cAAc,CAAC,aAAa,EAAE,YAAY,CAAC,EAAE,CAAC;gBACpD,MAAM,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;gBACzC,IAAI,IAAI,CAAC,QAAQ,EAAE,CAAC;oBAChB,MAAM,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;oBACtC,IAAI,CAAC,kBAAkB,EAAE,IAAI,CAAC,WAAW,EAAE,YAAY,CAAC,CAAC;oBACzD,IAAI,IAAI,CAAC,oBAAoB,EAAE,CAAC;wBAC5B,MAAM,IAAI,CAAC,oBAAoB,CAAC,iBAAiB,CAC7C,KAAK,EACL,aAAa,EACb,YAAY,CACf,CAAC;oBACN,CAAC;gBACL,CAAC;YACL,CAAC;YACD,OAAO,YAAY,CAAC;QACxB,CAAC;IACL,CAAC;IAED,KAAK,CAAC,wBAAwB,CAAC,KAAkB;QAC7C,IAAI,IAAI,CAAC,QAAQ,EAAE,CAAC;YAChB,MAAM,IAAI,KAAK,CACX,uDAAuD,CAC1D,CAAC;QACN,CAAC;QAED,IAAI,eAAsC,CAAC;QAE3C,IAAI,KAAK,CAAC,WAAW,EAAE,CAAC;YACpB,eAAe,GAAG,MAAM,IAAI,CAAC,UAAU,CAAC,WAAW,CAC/C,KAAK,CAAC,WAAW,CACpB,CAAC;QACN,CAAC;QAED,IAAI,CAAC,eAAe,IAAI,KAAK,CAAC,KAAK,EAAE,CAAC;YAClC,eAAe,GAAG,MAAM,IAAI,CAAC,UAAU,CAAC,WAAW,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;QACrE,CAAC;QAED,IAAI,eAAe,IAAI,eAAe,CAAC,aAAa,EAAE,CAAC;YACnD,MAAM,UAAU,GAAG,IAAI,wBAAqB,CAAC;gBACzC,OAAO,EAAE,IAAA,SAAM,GAAE;gBACjB,MAAM,EAAE,eAAe,CAAC,MAAM;gBAC9B,WAAW,EAAE,KAAK,CAAC,WAAW;gBAC9B,WAAW,EAAE,KAAK,CAAC,WAAW;gBAC9B,KAAK,EAAE,KAAK,CAAC,KAAK;gBAClB,WAAW,EAAE,KAAK,CAAC,WAAW;gBAC9B,QAAQ,EAAE,KAAK,CAAC,QAAQ;gBACxB,aAAa,EAAE,KAAK,CAAC,aAAa;gBAClC,SAAS,EAAE,KAAK,CAAC,SAAS;gBAC1B,SAAS,EAAE,KAAK,CAAC,SAAS;gBAC1B,QAAQ,EAAE,eAAe,CAAC,QAAQ;gBAClC,OAAO,EAAE,eAAe,CAAC,OAAO,GAAG,CAAC;gBACpC,eAAe,EAAE,KAAK,CAAC,eAAe;aACzC,CAAC,CAAC;YAEH,MAAM,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC,UAAU,CAAC,CAAC;YAC3C,MAAM,YAAY,GAAG,UAAU,CAAC,KAAK,CAAC,eAAe,CAAc,CAAC;YACpE,IAAI,CAAC,IAAI,CAAC,cAAc,CAAC,eAAe,EAAE,YAAY,CAAC,EAAE,CAAC;gBACtD,MAAM,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;YAC7C,CAAC;YACD,OAAO,YAAY,CAAC;QACxB,CAAC;QAED,MAAM,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;QACtC,MAAM,aAAa,GACf,MAAM,IAAI,CAAC,UAAU,CAAC,gCAAgC,CAClD,KAAK,CAAC,QAAQ,CACjB,CAAC;QACN,MAAM,YAAY,GAAG,KAAK,CAAC,KAAK,CAAC,aAAa,CAAc,CAAC;QAC7D,IAAI,CAAC,IAAI,CAAC,cAAc,CAAC,aAAa,EAAE,YAAY,CAAC,EAAE,CAAC;YACpD,MAAM,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;QAC7C,CAAC;QACD,OAAO,YAAY,CAAC;IACxB,CAAC;CACJ;AAvID,4CAuIC"}
1
+ {"version":3,"file":"UserEventHandler.js","sourceRoot":"","sources":["../src/UserEventHandler.ts"],"names":[],"mappings":"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"}
@@ -2,6 +2,7 @@ import { TransactionEvent, TransactionEventStore } from "../..";
2
2
  export declare class IMTransactionEventStore implements TransactionEventStore {
3
3
  private events;
4
4
  addEvent(event: TransactionEvent): Promise<void>;
5
+ getAllEventsByStreamId(streamId: string): Promise<TransactionEvent[]>;
5
6
  getEvents(): TransactionEvent[];
6
7
  getAll(): TransactionEvent[];
7
8
  getEventsByStreamId(streamId: string): TransactionEvent[];
@@ -1 +1 @@
1
- {"version":3,"file":"IMTransactionEventStore.d.ts","sourceRoot":"","sources":["../../../src/__tests__/test-helpers/IMTransactionEventStore.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAE,qBAAqB,EAAE,MAAM,OAAO,CAAC;AAEhE,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,MAAM,IAAI,gBAAgB,EAAE;IAI5B,mBAAmB,CAAC,QAAQ,EAAE,MAAM,GAAG,gBAAgB,EAAE;IAIzD,oBAAoB,IAAI,IAAI;IAI5B,KAAK,IAAI,IAAI;CAGhB"}
1
+ {"version":3,"file":"IMTransactionEventStore.d.ts","sourceRoot":"","sources":["../../../src/__tests__/test-helpers/IMTransactionEventStore.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAE,qBAAqB,EAAE,MAAM,OAAO,CAAC;AAEhE,qBAAa,uBAAwB,YAAW,qBAAqB;IACjE,OAAO,CAAC,MAAM,CAA0B;IAElC,QAAQ,CAAC,KAAK,EAAE,gBAAgB,GAAG,OAAO,CAAC,IAAI,CAAC;IAIhD,sBAAsB,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,gBAAgB,EAAE,CAAC;IAI3E,SAAS,IAAI,gBAAgB,EAAE;IAI/B,MAAM,IAAI,gBAAgB,EAAE;IAI5B,mBAAmB,CAAC,QAAQ,EAAE,MAAM,GAAG,gBAAgB,EAAE;IAIzD,oBAAoB,IAAI,IAAI;IAI5B,KAAK,IAAI,IAAI;CAGhB"}
@@ -8,6 +8,9 @@ class IMTransactionEventStore {
8
8
  async addEvent(event) {
9
9
  this.events.push(event);
10
10
  }
11
+ async getAllEventsByStreamId(streamId) {
12
+ return this.events.filter((event) => event.streamId === streamId);
13
+ }
11
14
  getEvents() {
12
15
  return [...this.events];
13
16
  }
@@ -1 +1 @@
1
- {"version":3,"file":"IMTransactionEventStore.js","sourceRoot":"","sources":["../../../src/__tests__/test-helpers/IMTransactionEventStore.ts"],"names":[],"mappings":";;;AAEA,MAAa,uBAAuB;IAApC;QACY,WAAM,GAAuB,EAAE,CAAC;IAyB5C,CAAC;IAvBG,KAAK,CAAC,QAAQ,CAAC,KAAuB;QAClC,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IAC5B,CAAC;IAED,SAAS;QACL,OAAO,CAAC,GAAG,IAAI,CAAC,MAAM,CAAC,CAAC;IAC5B,CAAC;IAED,MAAM;QACF,OAAO,IAAI,CAAC,SAAS,EAAE,CAAC;IAC5B,CAAC;IAED,mBAAmB,CAAC,QAAgB;QAChC,OAAO,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,QAAQ,KAAK,QAAQ,CAAC,CAAC;IACtE,CAAC;IAED,oBAAoB;QAChB,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,eAAe,KAAK,IAAI,CAAC,CAAC;IACxE,CAAC;IAED,KAAK;QACD,IAAI,CAAC,MAAM,GAAG,EAAE,CAAC;IACrB,CAAC;CACJ;AA1BD,0DA0BC"}
1
+ {"version":3,"file":"IMTransactionEventStore.js","sourceRoot":"","sources":["../../../src/__tests__/test-helpers/IMTransactionEventStore.ts"],"names":[],"mappings":";;;AAEA,MAAa,uBAAuB;IAApC;QACY,WAAM,GAAuB,EAAE,CAAC;IA6B5C,CAAC;IA3BG,KAAK,CAAC,QAAQ,CAAC,KAAuB;QAClC,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IAC5B,CAAC;IAED,KAAK,CAAC,sBAAsB,CAAC,QAAgB;QACzC,OAAO,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,QAAQ,KAAK,QAAQ,CAAC,CAAC;IACtE,CAAC;IAED,SAAS;QACL,OAAO,CAAC,GAAG,IAAI,CAAC,MAAM,CAAC,CAAC;IAC5B,CAAC;IAED,MAAM;QACF,OAAO,IAAI,CAAC,SAAS,EAAE,CAAC;IAC5B,CAAC;IAED,mBAAmB,CAAC,QAAgB;QAChC,OAAO,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,QAAQ,KAAK,QAAQ,CAAC,CAAC;IACtE,CAAC;IAED,oBAAoB;QAChB,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,eAAe,KAAK,IAAI,CAAC,CAAC;IACxE,CAAC;IAED,KAAK;QACD,IAAI,CAAC,MAAM,GAAG,EAAE,CAAC;IACrB,CAAC;CACJ;AA9BD,0DA8BC"}
@@ -1,5 +1,6 @@
1
1
  import { TransactionEvent } from "../common/DomainEvents";
2
2
  export interface TransactionEventStore {
3
3
  addEvent(event: TransactionEvent): Promise<void>;
4
+ getAllEventsByStreamId(streamId: string): Promise<TransactionEvent[]>;
4
5
  }
5
6
  //# sourceMappingURL=TransactionEventStore.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"TransactionEventStore.d.ts","sourceRoot":"","sources":["../../src/store/TransactionEventStore.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAE,MAAM,wBAAwB,CAAC;AAE1D,MAAM,WAAW,qBAAqB;IAClC,QAAQ,CAAC,KAAK,EAAE,gBAAgB,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;CACpD"}
1
+ {"version":3,"file":"TransactionEventStore.d.ts","sourceRoot":"","sources":["../../src/store/TransactionEventStore.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAE,MAAM,wBAAwB,CAAC;AAE1D,MAAM,WAAW,qBAAqB;IAClC,QAAQ,CAAC,KAAK,EAAE,gBAAgB,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IACjD,sBAAsB,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,gBAAgB,EAAE,CAAC,CAAC;CACzE"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@zeeshan60/event-processor",
3
- "version": "1.0.23",
3
+ "version": "1.0.25",
4
4
  "description": "Shared event sourcing infrastructure for Loan Tracker projects",
5
5
  "main": "dist/index.js",
6
6
  "types": "dist/index.d.ts",
@@ -1,6 +0,0 @@
1
- export declare class RetryError extends Error {
2
- readonly versionGap?: number | undefined;
3
- readonly delayMs?: number | undefined;
4
- constructor(message: string, versionGap?: number | undefined, delayMs?: number | undefined);
5
- }
6
- //# sourceMappingURL=RetryError.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"RetryError.d.ts","sourceRoot":"","sources":["../../src/errors/RetryError.ts"],"names":[],"mappings":"AAAA,qBAAa,UAAW,SAAQ,KAAK;aAGb,UAAU,CAAC,EAAE,MAAM;aACnB,OAAO,CAAC,EAAE,MAAM;gBAFhC,OAAO,EAAE,MAAM,EACC,UAAU,CAAC,EAAE,MAAM,YAAA,EACnB,OAAO,CAAC,EAAE,MAAM,YAAA;CAKvC"}
@@ -1,13 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.RetryError = void 0;
4
- class RetryError extends Error {
5
- constructor(message, versionGap, delayMs) {
6
- super(message);
7
- this.versionGap = versionGap;
8
- this.delayMs = delayMs;
9
- this.name = "RetryError";
10
- }
11
- }
12
- exports.RetryError = RetryError;
13
- //# sourceMappingURL=RetryError.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"RetryError.js","sourceRoot":"","sources":["../../src/errors/RetryError.ts"],"names":[],"mappings":";;;AAAA,MAAa,UAAW,SAAQ,KAAK;IACjC,YACI,OAAe,EACC,UAAmB,EACnB,OAAgB;QAEhC,KAAK,CAAC,OAAO,CAAC,CAAC;QAHC,eAAU,GAAV,UAAU,CAAS;QACnB,YAAO,GAAP,OAAO,CAAS;QAGhC,IAAI,CAAC,IAAI,GAAG,YAAY,CAAC;IAC7B,CAAC;CACJ;AATD,gCASC"}
@@ -1,12 +0,0 @@
1
- import { LoggingContext } from "../common/LoggingContext";
2
- export interface TryLaterOptions {
3
- shouldRetry: boolean;
4
- delayMs: number;
5
- versionGap: number;
6
- maxRetries: number;
7
- currentAttempt: number;
8
- context?: LoggingContext;
9
- logContext?: Record<string, any>;
10
- }
11
- export declare function tryLater(options: TryLaterOptions): Promise<void>;
12
- //# sourceMappingURL=tryLater.d.ts.map