@zeeshan60/event-processor 1.0.11 → 1.0.13

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 (156) hide show
  1. package/dist/ActivityEventHandler.d.ts +4 -4
  2. package/dist/ActivityEventHandler.d.ts.map +1 -1
  3. package/dist/ActivityLogEvents.d.ts +4 -2
  4. package/dist/ActivityLogEvents.d.ts.map +1 -1
  5. package/dist/ActivityLogEvents.js +1 -0
  6. package/dist/EventProcessorSDK.d.ts +22 -18
  7. package/dist/EventProcessorSDK.d.ts.map +1 -1
  8. package/dist/EventProcessorSDK.js +15 -4
  9. package/dist/FriendEventHandler.d.ts +4 -12
  10. package/dist/FriendEventHandler.d.ts.map +1 -1
  11. package/dist/FriendEventHandler.js +22 -54
  12. package/dist/FriendEvents.d.ts +13 -3
  13. package/dist/FriendEvents.d.ts.map +1 -1
  14. package/dist/FriendEvents.js +16 -7
  15. package/dist/GroupEventHandler.d.ts +7 -7
  16. package/dist/GroupEventHandler.d.ts.map +1 -1
  17. package/dist/GroupEventHandler.js +21 -12
  18. package/dist/GroupEvents.d.ts +15 -3
  19. package/dist/GroupEvents.d.ts.map +1 -1
  20. package/dist/GroupEvents.js +25 -13
  21. package/dist/GroupTransactionEventHandler.d.ts +7 -7
  22. package/dist/GroupTransactionEventHandler.d.ts.map +1 -1
  23. package/dist/GroupTransactionEventHandler.js +23 -16
  24. package/dist/GroupTransactionEvents.d.ts +22 -4
  25. package/dist/GroupTransactionEvents.d.ts.map +1 -1
  26. package/dist/GroupTransactionEvents.js +39 -21
  27. package/dist/TransactionEventHandler.d.ts +2 -5
  28. package/dist/TransactionEventHandler.d.ts.map +1 -1
  29. package/dist/TransactionEventHandler.js +29 -13
  30. package/dist/TransactionEvents.d.ts +24 -8
  31. package/dist/TransactionEvents.d.ts.map +1 -1
  32. package/dist/TransactionEvents.js +38 -22
  33. package/dist/UserEventHandler.d.ts +3 -11
  34. package/dist/UserEventHandler.d.ts.map +1 -1
  35. package/dist/UserEventHandler.js +64 -62
  36. package/dist/UserEvents.d.ts +20 -3
  37. package/dist/UserEvents.d.ts.map +1 -1
  38. package/dist/UserEvents.js +53 -18
  39. package/dist/__tests__/e2e/setup/firebaseEmulator.d.ts +3 -0
  40. package/dist/__tests__/e2e/setup/firebaseEmulator.d.ts.map +1 -0
  41. package/dist/__tests__/e2e/setup/firebaseEmulator.js +87 -0
  42. package/dist/__tests__/e2e/setup/firestoreStores.d.ts +28 -0
  43. package/dist/__tests__/e2e/setup/firestoreStores.d.ts.map +1 -0
  44. package/dist/__tests__/e2e/setup/firestoreStores.js +276 -0
  45. package/dist/__tests__/e2e/setup/firestoreTestHelpers.d.ts +15 -0
  46. package/dist/__tests__/e2e/setup/firestoreTestHelpers.d.ts.map +1 -0
  47. package/dist/__tests__/e2e/setup/firestoreTestHelpers.js +167 -0
  48. package/dist/__tests__/test-helpers/IMActivityLogEventStore.d.ts +2 -2
  49. package/dist/__tests__/test-helpers/IMActivityLogEventStore.d.ts.map +1 -1
  50. package/dist/__tests__/test-helpers/IMActivityLogModelStore.d.ts +2 -2
  51. package/dist/__tests__/test-helpers/IMActivityLogModelStore.d.ts.map +1 -1
  52. package/dist/__tests__/test-helpers/IMFriendEventStore.d.ts +2 -2
  53. package/dist/__tests__/test-helpers/IMFriendEventStore.d.ts.map +1 -1
  54. package/dist/__tests__/test-helpers/IMFriendModelStore.d.ts +3 -2
  55. package/dist/__tests__/test-helpers/IMFriendModelStore.d.ts.map +1 -1
  56. package/dist/__tests__/test-helpers/IMFriendModelStore.js +9 -0
  57. package/dist/__tests__/test-helpers/IMGroupEventStore.d.ts +2 -2
  58. package/dist/__tests__/test-helpers/IMGroupEventStore.d.ts.map +1 -1
  59. package/dist/__tests__/test-helpers/IMGroupModelStore.d.ts +2 -2
  60. package/dist/__tests__/test-helpers/IMGroupModelStore.d.ts.map +1 -1
  61. package/dist/__tests__/test-helpers/IMGroupTransactionEventStore.d.ts +2 -2
  62. package/dist/__tests__/test-helpers/IMGroupTransactionEventStore.d.ts.map +1 -1
  63. package/dist/__tests__/test-helpers/IMGroupTransactionModelStore.d.ts +2 -2
  64. package/dist/__tests__/test-helpers/IMGroupTransactionModelStore.d.ts.map +1 -1
  65. package/dist/__tests__/test-helpers/IMTransactionEventStore.d.ts +2 -2
  66. package/dist/__tests__/test-helpers/IMTransactionEventStore.d.ts.map +1 -1
  67. package/dist/__tests__/test-helpers/IMTransactionModelStore.d.ts +2 -2
  68. package/dist/__tests__/test-helpers/IMTransactionModelStore.d.ts.map +1 -1
  69. package/dist/__tests__/test-helpers/IMUserEventStore.d.ts +2 -2
  70. package/dist/__tests__/test-helpers/IMUserEventStore.d.ts.map +1 -1
  71. package/dist/__tests__/test-helpers/IMUserModelStore.d.ts +2 -2
  72. package/dist/__tests__/test-helpers/IMUserModelStore.d.ts.map +1 -1
  73. package/dist/__tests__/test-helpers/MockFirebaseAdapter.d.ts +2 -1
  74. package/dist/__tests__/test-helpers/MockFirebaseAdapter.d.ts.map +1 -1
  75. package/dist/__tests__/test-helpers/MockFirebaseAdapter.js +5 -1
  76. package/dist/client/controllers/FriendController.d.ts +12 -0
  77. package/dist/client/controllers/FriendController.d.ts.map +1 -0
  78. package/dist/client/controllers/FriendController.js +122 -0
  79. package/dist/client/controllers/UserController.d.ts +6 -5
  80. package/dist/client/controllers/UserController.d.ts.map +1 -1
  81. package/dist/client/controllers/UserController.js +94 -7
  82. package/dist/client/handlers/UIEventHandler.d.ts +1 -1
  83. package/dist/client/handlers/UIEventHandler.d.ts.map +1 -1
  84. package/dist/client/handlers/UIEventHandler.js +4 -2
  85. package/dist/client/handlers/UIFriendEventHandler.d.ts +6 -6
  86. package/dist/client/handlers/UIFriendEventHandler.d.ts.map +1 -1
  87. package/dist/client/handlers/UIGroupEventHandler.d.ts +7 -7
  88. package/dist/client/handlers/UIGroupEventHandler.d.ts.map +1 -1
  89. package/dist/client/handlers/UIGroupTransactionEventHandler.d.ts +7 -7
  90. package/dist/client/handlers/UIGroupTransactionEventHandler.d.ts.map +1 -1
  91. package/dist/client/handlers/UITransactionEventHandler.d.ts +5 -5
  92. package/dist/client/handlers/UITransactionEventHandler.d.ts.map +1 -1
  93. package/dist/client/handlers/UIUserEventHandler.d.ts +4 -4
  94. package/dist/client/handlers/UIUserEventHandler.d.ts.map +1 -1
  95. package/dist/common/DomainEvents.d.ts +1 -1
  96. package/dist/common/DomainEvents.d.ts.map +1 -1
  97. package/dist/common/DomainEvents.js +37 -37
  98. package/dist/common/Event.d.ts +3 -2
  99. package/dist/common/Event.d.ts.map +1 -1
  100. package/dist/common/EventBus.d.ts +2 -2
  101. package/dist/common/EventBus.d.ts.map +1 -1
  102. package/dist/common/EventBusSingleton.d.ts +1 -1
  103. package/dist/common/Model.d.ts.map +1 -1
  104. package/dist/common/index.d.ts +2 -2
  105. package/dist/contracts/common/index.d.ts.map +1 -1
  106. package/dist/contracts/expenses/index.d.ts.map +1 -1
  107. package/dist/contracts/friends/index.d.ts.map +1 -1
  108. package/dist/contracts/groups/index.d.ts.map +1 -1
  109. package/dist/contracts/index.d.ts +1 -0
  110. package/dist/contracts/index.d.ts.map +1 -1
  111. package/dist/contracts/index.js +1 -0
  112. package/dist/contracts/shared/index.d.ts.map +1 -1
  113. package/dist/contracts/transactions/index.d.ts.map +1 -1
  114. package/dist/contracts/users/index.d.ts +15 -0
  115. package/dist/contracts/users/index.d.ts.map +1 -0
  116. package/dist/contracts/users/index.js +2 -0
  117. package/dist/converters/eventConverter.d.ts +3 -3
  118. package/dist/converters/eventConverter.d.ts.map +1 -1
  119. package/dist/converters/eventConverter.js +67 -50
  120. package/dist/events.d.ts +29 -29
  121. package/dist/events.d.ts.map +1 -1
  122. package/dist/index.d.ts +18 -14
  123. package/dist/index.d.ts.map +1 -1
  124. package/dist/index.js +10 -2
  125. package/dist/store/ActivityLogEventStore.d.ts +1 -1
  126. package/dist/store/ActivityLogEventStore.d.ts.map +1 -1
  127. package/dist/store/ActivityLogModelStore.d.ts +2 -2
  128. package/dist/store/ActivityLogModelStore.d.ts.map +1 -1
  129. package/dist/store/FriendEventStore.d.ts +1 -1
  130. package/dist/store/FriendEventStore.d.ts.map +1 -1
  131. package/dist/store/FriendModelStore.d.ts +3 -2
  132. package/dist/store/FriendModelStore.d.ts.map +1 -1
  133. package/dist/store/GroupEventStore.d.ts +1 -1
  134. package/dist/store/GroupEventStore.d.ts.map +1 -1
  135. package/dist/store/GroupModelStore.d.ts +2 -2
  136. package/dist/store/GroupModelStore.d.ts.map +1 -1
  137. package/dist/store/GroupTransactionEventStore.d.ts +1 -1
  138. package/dist/store/GroupTransactionEventStore.d.ts.map +1 -1
  139. package/dist/store/GroupTransactionModelStore.d.ts +2 -2
  140. package/dist/store/GroupTransactionModelStore.d.ts.map +1 -1
  141. package/dist/store/ModelStore.d.ts +1 -1
  142. package/dist/store/ModelStore.d.ts.map +1 -1
  143. package/dist/store/TransactionEventStore.d.ts +1 -1
  144. package/dist/store/TransactionEventStore.d.ts.map +1 -1
  145. package/dist/store/TransactionModelStore.d.ts +2 -2
  146. package/dist/store/TransactionModelStore.d.ts.map +1 -1
  147. package/dist/store/UserEventStore.d.ts +1 -1
  148. package/dist/store/UserEventStore.d.ts.map +1 -1
  149. package/dist/store/UserModelStore.d.ts +2 -2
  150. package/dist/store/UserModelStore.d.ts.map +1 -1
  151. package/dist/utils/splitTypeUtils.d.ts +1 -1
  152. package/dist/utils/splitTypeUtils.d.ts.map +1 -1
  153. package/dist/utils/userPathUtils.d.ts +1 -1
  154. package/dist/utils/userPathUtils.d.ts.map +1 -1
  155. package/dist/utils/userPathUtils.js +3 -3
  156. package/package.json +1 -1
@@ -1,7 +1,7 @@
1
- import { Event, Model } from '.';
2
- import { ActivityLogModelStore } from '.';
3
- import { ActivityLogEventStore } from '.';
4
- import { UserModelStore } from '.';
1
+ import { Event, Model } from ".";
2
+ import { ActivityLogModelStore } from ".";
3
+ import { ActivityLogEventStore } from ".";
4
+ import { UserModelStore } from ".";
5
5
  export declare class ActivityEventHandler {
6
6
  private activityLogModelStore;
7
7
  private activityLogEventStore;
@@ -1 +1 @@
1
- {"version":3,"file":"ActivityEventHandler.d.ts","sourceRoot":"","sources":["../src/ActivityEventHandler.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,KAAK,EAAE,KAAK,EAA8C,MAAM,GAAG,CAAC;AAC5E,OAAO,EAAC,qBAAqB,EAAC,MAAM,GAAG,CAAC;AACxC,OAAO,EAAC,qBAAqB,EAAC,MAAM,GAAG,CAAC;AACxC,OAAO,EAAC,cAAc,EAAC,MAAM,GAAG,CAAC;AAEjC,qBAAa,oBAAoB;IAEzB,OAAO,CAAC,qBAAqB;IAC7B,OAAO,CAAC,qBAAqB;IAC7B,OAAO,CAAC,cAAc;gBAFd,qBAAqB,EAAE,qBAAqB,EAC5C,qBAAqB,EAAE,qBAAqB,EAC5C,cAAc,EAAE,cAAc;IAGpC,iBAAiB,CAAC,KAAK,EAAE,KAAK,EAAE,aAAa,EAAE,KAAK,GAAG,SAAS,EAAE,YAAY,EAAE,KAAK,GAAG,OAAO,CAAC,IAAI,CAAC;CA2B9G"}
1
+ {"version":3,"file":"ActivityEventHandler.d.ts","sourceRoot":"","sources":["../src/ActivityEventHandler.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,KAAK,EAA+C,MAAM,GAAG,CAAC;AAC9E,OAAO,EAAE,qBAAqB,EAAE,MAAM,GAAG,CAAC;AAC1C,OAAO,EAAE,qBAAqB,EAAE,MAAM,GAAG,CAAC;AAC1C,OAAO,EAAE,cAAc,EAAE,MAAM,GAAG,CAAC;AAEnC,qBAAa,oBAAoB;IAEzB,OAAO,CAAC,qBAAqB;IAC7B,OAAO,CAAC,qBAAqB;IAC7B,OAAO,CAAC,cAAc;gBAFd,qBAAqB,EAAE,qBAAqB,EAC5C,qBAAqB,EAAE,qBAAqB,EAC5C,cAAc,EAAE,cAAc;IAGpC,iBAAiB,CACnB,KAAK,EAAE,KAAK,EACZ,aAAa,EAAE,KAAK,GAAG,SAAS,EAChC,YAAY,EAAE,KAAK,GACpB,OAAO,CAAC,IAAI,CAAC;CA8BnB"}
@@ -1,5 +1,5 @@
1
- import { ActivityLogEvent } from './common/DomainEvents';
2
- import { Model } from './common/Model';
1
+ import { ActivityLogEvent } from "./common/DomainEvents";
2
+ import { Model } from "./common/Model";
3
3
  export declare enum SourceType {
4
4
  Transaction = "Transaction",
5
5
  User = "User",
@@ -15,6 +15,7 @@ export interface ActivityLogModel extends Model {
15
15
  date: Date;
16
16
  }
17
17
  export interface ActivityLogCreatedProps {
18
+ eventId: string;
18
19
  userId: string;
19
20
  activityByUid: string;
20
21
  sourceStreamId: string;
@@ -28,6 +29,7 @@ export interface ActivityLogCreatedProps {
28
29
  systemGenerated: boolean;
29
30
  }
30
31
  export declare class ActivityLogCreated implements ActivityLogEvent {
32
+ eventId: string;
31
33
  userId: string;
32
34
  activityByUid: string;
33
35
  sourceStreamId: string;
@@ -1 +1 @@
1
- {"version":3,"file":"ActivityLogEvents.d.ts","sourceRoot":"","sources":["../src/ActivityLogEvents.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,gBAAgB,EAAE,MAAM,uBAAuB,CAAC;AACzD,OAAO,EAAE,KAAK,EAAE,MAAM,gBAAgB,CAAC;AAEvC,oBAAY,UAAU;IACpB,WAAW,gBAAgB;IAC3B,IAAI,SAAS;IACb,MAAM,WAAW;IACjB,KAAK,UAAU;IACf,gBAAgB,qBAAqB;CACtC;AAED,MAAM,WAAW,gBAAiB,SAAQ,KAAK;IAC7C,aAAa,EAAE,MAAM,CAAC;IACtB,cAAc,EAAE,MAAM,CAAC;IACvB,UAAU,EAAE,UAAU,CAAC;IACvB,UAAU,EAAE,MAAM,CAAC;IACnB,IAAI,EAAE,IAAI,CAAC;CACZ;AAED,MAAM,WAAW,uBAAuB;IACtC,MAAM,EAAE,MAAM,CAAC;IACf,aAAa,EAAE,MAAM,CAAC;IACtB,cAAc,EAAE,MAAM,CAAC;IACvB,UAAU,EAAE,UAAU,CAAC;IACvB,UAAU,EAAE,MAAM,CAAC;IACnB,IAAI,EAAE,IAAI,CAAC;IACX,SAAS,EAAE,IAAI,CAAC;IAChB,SAAS,EAAE,MAAM,CAAC;IAClB,QAAQ,EAAE,MAAM,CAAC;IACjB,OAAO,EAAE,MAAM,CAAC;IAChB,eAAe,EAAE,OAAO,CAAC;CAC1B;AAED,qBAAa,kBAAmB,YAAW,gBAAgB;IAClD,MAAM,EAAE,MAAM,CAAC;IACf,aAAa,EAAE,MAAM,CAAC;IACtB,cAAc,EAAE,MAAM,CAAC;IACvB,UAAU,EAAE,UAAU,CAAC;IACvB,UAAU,EAAE,MAAM,CAAC;IACnB,IAAI,EAAE,IAAI,CAAC;IACX,SAAS,EAAE,IAAI,CAAC;IAChB,SAAS,EAAE,MAAM,CAAC;IAClB,QAAQ,EAAE,MAAM,CAAC;IACjB,OAAO,EAAE,MAAM,CAAC;IAChB,eAAe,EAAE,OAAO,CAAC;gBAEpB,KAAK,EAAE,uBAAuB;IAc1C,KAAK,CAAC,SAAS,CAAC,EAAE,KAAK,GAAG,gBAAgB;CAa3C"}
1
+ {"version":3,"file":"ActivityLogEvents.d.ts","sourceRoot":"","sources":["../src/ActivityLogEvents.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,gBAAgB,EAAE,MAAM,uBAAuB,CAAC;AACzD,OAAO,EAAE,KAAK,EAAE,MAAM,gBAAgB,CAAC;AAEvC,oBAAY,UAAU;IAClB,WAAW,gBAAgB;IAC3B,IAAI,SAAS;IACb,MAAM,WAAW;IACjB,KAAK,UAAU;IACf,gBAAgB,qBAAqB;CACxC;AAED,MAAM,WAAW,gBAAiB,SAAQ,KAAK;IAC3C,aAAa,EAAE,MAAM,CAAC;IACtB,cAAc,EAAE,MAAM,CAAC;IACvB,UAAU,EAAE,UAAU,CAAC;IACvB,UAAU,EAAE,MAAM,CAAC;IACnB,IAAI,EAAE,IAAI,CAAC;CACd;AAED,MAAM,WAAW,uBAAuB;IACpC,OAAO,EAAE,MAAM,CAAC;IAChB,MAAM,EAAE,MAAM,CAAC;IACf,aAAa,EAAE,MAAM,CAAC;IACtB,cAAc,EAAE,MAAM,CAAC;IACvB,UAAU,EAAE,UAAU,CAAC;IACvB,UAAU,EAAE,MAAM,CAAC;IACnB,IAAI,EAAE,IAAI,CAAC;IACX,SAAS,EAAE,IAAI,CAAC;IAChB,SAAS,EAAE,MAAM,CAAC;IAClB,QAAQ,EAAE,MAAM,CAAC;IACjB,OAAO,EAAE,MAAM,CAAC;IAChB,eAAe,EAAE,OAAO,CAAC;CAC5B;AAED,qBAAa,kBAAmB,YAAW,gBAAgB;IAChD,OAAO,EAAE,MAAM,CAAC;IAChB,MAAM,EAAE,MAAM,CAAC;IACf,aAAa,EAAE,MAAM,CAAC;IACtB,cAAc,EAAE,MAAM,CAAC;IACvB,UAAU,EAAE,UAAU,CAAC;IACvB,UAAU,EAAE,MAAM,CAAC;IACnB,IAAI,EAAE,IAAI,CAAC;IACX,SAAS,EAAE,IAAI,CAAC;IAChB,SAAS,EAAE,MAAM,CAAC;IAClB,QAAQ,EAAE,MAAM,CAAC;IACjB,OAAO,EAAE,MAAM,CAAC;IAChB,eAAe,EAAE,OAAO,CAAC;gBAEpB,KAAK,EAAE,uBAAuB;IAe1C,KAAK,CAAC,SAAS,CAAC,EAAE,KAAK,GAAG,gBAAgB;CAa7C"}
@@ -11,6 +11,7 @@ var SourceType;
11
11
  })(SourceType || (exports.SourceType = SourceType = {}));
12
12
  class ActivityLogCreated {
13
13
  constructor(props) {
14
+ this.eventId = props.eventId;
14
15
  this.userId = props.userId;
15
16
  this.activityByUid = props.activityByUid;
16
17
  this.sourceStreamId = props.sourceStreamId;
@@ -1,20 +1,21 @@
1
- import { UserModelStore } from './store/UserModelStore';
2
- import { UserEventStore } from './store/UserEventStore';
3
- import { FriendModelStore } from './store/FriendModelStore';
4
- import { FriendEventStore } from './store/FriendEventStore';
5
- import { TransactionModelStore } from './store/TransactionModelStore';
6
- import { TransactionEventStore } from './store/TransactionEventStore';
7
- import { GroupModelStore } from './store/GroupModelStore';
8
- import { GroupEventStore } from './store/GroupEventStore';
9
- import { GroupTransactionModelStore } from './store/GroupTransactionModelStore';
10
- import { GroupTransactionEventStore } from './store/GroupTransactionEventStore';
11
- import { ActivityLogModelStore } from './store/ActivityLogModelStore';
12
- import { ActivityLogEventStore } from './store/ActivityLogEventStore';
13
- import { UserController } from './client/controllers/UserController';
14
- import { UIEventHandler } from './client/handlers/UIEventHandler';
15
- import { FirebaseAdapter } from './adapters/FirebaseAdapter';
16
- import type { Event } from './events';
17
- import type { FirestoreEventData } from './converters/eventConverter';
1
+ import { UserModelStore } from "./store/UserModelStore";
2
+ import { UserEventStore } from "./store/UserEventStore";
3
+ import { FriendModelStore } from "./store/FriendModelStore";
4
+ import { FriendEventStore } from "./store/FriendEventStore";
5
+ import { TransactionModelStore } from "./store/TransactionModelStore";
6
+ import { TransactionEventStore } from "./store/TransactionEventStore";
7
+ import { GroupModelStore } from "./store/GroupModelStore";
8
+ import { GroupEventStore } from "./store/GroupEventStore";
9
+ import { GroupTransactionModelStore } from "./store/GroupTransactionModelStore";
10
+ import { GroupTransactionEventStore } from "./store/GroupTransactionEventStore";
11
+ import { ActivityLogModelStore } from "./store/ActivityLogModelStore";
12
+ import { ActivityLogEventStore } from "./store/ActivityLogEventStore";
13
+ import { UserController } from "./client/controllers/UserController";
14
+ import { FriendController } from "./client/controllers/FriendController";
15
+ import { UIEventHandler } from "./client/handlers/UIEventHandler";
16
+ import { FirebaseAdapter } from "./adapters/FirebaseAdapter";
17
+ import type { Event } from "./events";
18
+ import type { FirestoreEventData } from "./converters/eventConverter";
18
19
  export type StoreConfig = {
19
20
  firebaseAdapter: FirebaseAdapter;
20
21
  userModelStore: UserModelStore;
@@ -34,6 +35,7 @@ export declare class EventProcessorSDK {
34
35
  private static instance;
35
36
  private readonly storeConfig;
36
37
  private userControllerInstance;
38
+ private friendControllerInstance;
37
39
  private uiEventHandlerInstance;
38
40
  private constructor();
39
41
  static initialize(config: StoreConfig): EventProcessorSDK;
@@ -42,14 +44,16 @@ export declare class EventProcessorSDK {
42
44
  static __resetForTesting(): void;
43
45
  getStoreConfig(): StoreConfig;
44
46
  getUserController(): UserController;
47
+ getFriendController(): FriendController;
45
48
  getUIEventHandler(): UIEventHandler;
46
49
  getFirebaseAdapter(): FirebaseAdapter;
47
50
  }
48
51
  export declare function initializeSDK(config: StoreConfig): EventProcessorSDK;
49
52
  export declare function getUserController(): UserController;
53
+ export declare function getFriendController(): FriendController;
50
54
  export declare function getUIEventHandler(): UIEventHandler;
51
55
  export declare function getFirebaseAdapter(): FirebaseAdapter;
52
- export declare function eventToFirestore(event: Event, eventId: string): FirestoreEventData;
56
+ export declare function eventToFirestore(event: Event): FirestoreEventData;
53
57
  export declare function firestoreToEvent(data: FirestoreEventData): Event;
54
58
  export declare function isSDKInitialized(): boolean;
55
59
  export declare function __resetSDKForTesting(): void;
@@ -1 +1 @@
1
- {"version":3,"file":"EventProcessorSDK.d.ts","sourceRoot":"","sources":["../src/EventProcessorSDK.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,cAAc,EAAC,MAAM,wBAAwB,CAAC;AACtD,OAAO,EAAC,cAAc,EAAC,MAAM,wBAAwB,CAAC;AACtD,OAAO,EAAC,gBAAgB,EAAC,MAAM,0BAA0B,CAAC;AAC1D,OAAO,EAAC,gBAAgB,EAAC,MAAM,0BAA0B,CAAC;AAC1D,OAAO,EAAC,qBAAqB,EAAC,MAAM,+BAA+B,CAAC;AACpE,OAAO,EAAC,qBAAqB,EAAC,MAAM,+BAA+B,CAAC;AACpE,OAAO,EAAC,eAAe,EAAC,MAAM,yBAAyB,CAAC;AACxD,OAAO,EAAC,eAAe,EAAC,MAAM,yBAAyB,CAAC;AACxD,OAAO,EAAC,0BAA0B,EAAC,MAAM,oCAAoC,CAAC;AAC9E,OAAO,EAAC,0BAA0B,EAAC,MAAM,oCAAoC,CAAC;AAC9E,OAAO,EAAC,qBAAqB,EAAC,MAAM,+BAA+B,CAAC;AACpE,OAAO,EAAC,qBAAqB,EAAC,MAAM,+BAA+B,CAAC;AACpE,OAAO,EAAC,cAAc,EAAC,MAAM,qCAAqC,CAAC;AACnE,OAAO,EAAC,cAAc,EAAC,MAAM,kCAAkC,CAAC;AAChE,OAAO,EAAC,eAAe,EAAC,MAAM,4BAA4B,CAAC;AAK3D,OAAO,KAAK,EAAC,KAAK,EAAC,MAAM,UAAU,CAAC;AACpC,OAAO,KAAK,EAAC,kBAAkB,EAAC,MAAM,6BAA6B,CAAC;AAEpE,MAAM,MAAM,WAAW,GAAG;IACtB,eAAe,EAAE,eAAe,CAAC;IACjC,cAAc,EAAE,cAAc,CAAC;IAC/B,cAAc,EAAE,cAAc,CAAC;IAC/B,gBAAgB,EAAE,gBAAgB,CAAC;IACnC,gBAAgB,EAAE,gBAAgB,CAAC;IACnC,qBAAqB,EAAE,qBAAqB,CAAC;IAC7C,qBAAqB,EAAE,qBAAqB,CAAC;IAC7C,eAAe,EAAE,eAAe,CAAC;IACjC,eAAe,EAAE,eAAe,CAAC;IACjC,0BAA0B,EAAE,0BAA0B,CAAC;IACvD,0BAA0B,EAAE,0BAA0B,CAAC;IACvD,qBAAqB,EAAE,qBAAqB,CAAC;IAC7C,qBAAqB,EAAE,qBAAqB,CAAC;CAChD,CAAC;AAEF,qBAAa,iBAAiB;IAC1B,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAgC;IACvD,OAAO,CAAC,QAAQ,CAAC,WAAW,CAAc;IAC1C,OAAO,CAAC,sBAAsB,CAA6B;IAC3D,OAAO,CAAC,sBAAsB,CAA6B;IAE3D,OAAO;IAIP,MAAM,CAAC,UAAU,CAAC,MAAM,EAAE,WAAW,GAAG,iBAAiB;IAKzD,MAAM,CAAC,WAAW,IAAI,iBAAiB;IAOvC,MAAM,CAAC,aAAa,IAAI,OAAO;IAI/B,MAAM,CAAC,iBAAiB,IAAI,IAAI;IAIhC,cAAc,IAAI,WAAW;IAI7B,iBAAiB,IAAI,cAAc;IAWnC,iBAAiB,IAAI,cAAc;IAUnC,kBAAkB,IAAI,eAAe;CAGxC;AAED,wBAAgB,aAAa,CAAC,MAAM,EAAE,WAAW,GAAG,iBAAiB,CAEpE;AAED,wBAAgB,iBAAiB,IAAI,cAAc,CAElD;AAED,wBAAgB,iBAAiB,IAAI,cAAc,CAElD;AAED,wBAAgB,kBAAkB,IAAI,eAAe,CAEpD;AAED,wBAAgB,gBAAgB,CAAC,KAAK,EAAE,KAAK,EAAE,OAAO,EAAE,MAAM,GAAG,kBAAkB,CAGlF;AAED,wBAAgB,gBAAgB,CAAC,IAAI,EAAE,kBAAkB,GAAG,KAAK,CAGhE;AAED,wBAAgB,gBAAgB,IAAI,OAAO,CAE1C;AAED,wBAAgB,oBAAoB,IAAI,IAAI,CAE3C"}
1
+ {"version":3,"file":"EventProcessorSDK.d.ts","sourceRoot":"","sources":["../src/EventProcessorSDK.ts"],"names":[],"mappings":"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"}
@@ -3,6 +3,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.EventProcessorSDK = void 0;
4
4
  exports.initializeSDK = initializeSDK;
5
5
  exports.getUserController = getUserController;
6
+ exports.getFriendController = getFriendController;
6
7
  exports.getUIEventHandler = getUIEventHandler;
7
8
  exports.getFirebaseAdapter = getFirebaseAdapter;
8
9
  exports.eventToFirestore = eventToFirestore;
@@ -10,6 +11,7 @@ exports.firestoreToEvent = firestoreToEvent;
10
11
  exports.isSDKInitialized = isSDKInitialized;
11
12
  exports.__resetSDKForTesting = __resetSDKForTesting;
12
13
  const UserController_1 = require("./client/controllers/UserController");
14
+ const FriendController_1 = require("./client/controllers/FriendController");
13
15
  const UIEventHandler_1 = require("./client/handlers/UIEventHandler");
14
16
  const eventConverter_1 = require("./converters/eventConverter");
15
17
  class EventProcessorSDK {
@@ -22,7 +24,7 @@ class EventProcessorSDK {
22
24
  }
23
25
  static getInstance() {
24
26
  if (!EventProcessorSDK.instance) {
25
- throw new Error('EventProcessorSDK not initialized. Call EventProcessorSDK.initialize() first.');
27
+ throw new Error("EventProcessorSDK not initialized. Call EventProcessorSDK.initialize() first.");
26
28
  }
27
29
  return EventProcessorSDK.instance;
28
30
  }
@@ -37,10 +39,16 @@ class EventProcessorSDK {
37
39
  }
38
40
  getUserController() {
39
41
  if (!this.userControllerInstance) {
40
- this.userControllerInstance = new UserController_1.UserController(this.storeConfig.userModelStore, this.storeConfig.userEventStore);
42
+ this.userControllerInstance = new UserController_1.UserController();
41
43
  }
42
44
  return this.userControllerInstance;
43
45
  }
46
+ getFriendController() {
47
+ if (!this.friendControllerInstance) {
48
+ this.friendControllerInstance = new FriendController_1.FriendController();
49
+ }
50
+ return this.friendControllerInstance;
51
+ }
44
52
  getUIEventHandler() {
45
53
  if (!this.uiEventHandlerInstance) {
46
54
  this.uiEventHandlerInstance = new UIEventHandler_1.UIEventHandler(this.storeConfig.userModelStore);
@@ -58,15 +66,18 @@ function initializeSDK(config) {
58
66
  function getUserController() {
59
67
  return EventProcessorSDK.getInstance().getUserController();
60
68
  }
69
+ function getFriendController() {
70
+ return EventProcessorSDK.getInstance().getFriendController();
71
+ }
61
72
  function getUIEventHandler() {
62
73
  return EventProcessorSDK.getInstance().getUIEventHandler();
63
74
  }
64
75
  function getFirebaseAdapter() {
65
76
  return EventProcessorSDK.getInstance().getFirebaseAdapter();
66
77
  }
67
- function eventToFirestore(event, eventId) {
78
+ function eventToFirestore(event) {
68
79
  const adapter = getFirebaseAdapter();
69
- return (0, eventConverter_1.eventToFirestore)(event, eventId, adapter);
80
+ return (0, eventConverter_1.eventToFirestore)(event, adapter);
70
81
  }
71
82
  function firestoreToEvent(data) {
72
83
  const adapter = getFirebaseAdapter();
@@ -1,9 +1,5 @@
1
- import { FriendCreated, FriendDeleted, FriendIdAdded, FriendIdRemoved, FriendModel, FriendUpdated, FriendEvent } from '.';
2
- import { FriendModelStore } from '.';
3
- import { UserModelStore } from '.';
4
- import { FriendEventStore } from '.';
5
- import { UserEventStore } from '.';
6
- import { ActivityEventHandler } from './ActivityEventHandler';
1
+ import { FriendCreated, FriendEvent, FriendEventStore, FriendModelStore, UserEventStore, UserModelStore } from ".";
2
+ import { ActivityEventHandler } from "./ActivityEventHandler";
7
3
  export declare class FriendEventHandler {
8
4
  private modelStore;
9
5
  private userModelStore;
@@ -11,11 +7,7 @@ export declare class FriendEventHandler {
11
7
  private userEventStore;
12
8
  private activityEventHandler?;
13
9
  constructor(modelStore: FriendModelStore, userModelStore: UserModelStore, friendEventStore: FriendEventStore, userEventStore: UserEventStore, activityEventHandler?: ActivityEventHandler | undefined);
14
- handleEvent(event: FriendEvent): Promise<FriendModel>;
15
- handleFriendCreated(event: FriendCreated): Promise<FriendModel>;
16
- handleFriendUpdated(event: FriendUpdated): Promise<FriendModel>;
17
- handleFriendDeleted(event: FriendDeleted): Promise<FriendModel>;
18
- handleFriendIdAdded(event: FriendIdAdded): Promise<FriendModel>;
19
- handleFriendIdRemoved(event: FriendIdRemoved): Promise<FriendModel>;
10
+ handleEvent(event: FriendEvent): Promise<void>;
11
+ handleFriendCreated(event: FriendCreated): Promise<void>;
20
12
  }
21
13
  //# sourceMappingURL=FriendEventHandler.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"FriendEventHandler.d.ts","sourceRoot":"","sources":["../src/FriendEventHandler.ts"],"names":[],"mappings":"AAAA,OAAO,EACH,aAAa,EACb,aAAa,EACb,aAAa,EACb,eAAe,EACf,WAAW,EACX,aAAa,EAGb,WAAW,EACd,MAAM,GAAG,CAAC;AACX,OAAO,EAAC,gBAAgB,EAAC,MAAM,GAAG,CAAC;AACnC,OAAO,EAAC,cAAc,EAAC,MAAM,GAAG,CAAC;AACjC,OAAO,EAAC,gBAAgB,EAAC,MAAM,GAAG,CAAC;AACnC,OAAO,EAAC,cAAc,EAAC,MAAM,GAAG,CAAC;AACjC,OAAO,EAAC,oBAAoB,EAAC,MAAM,wBAAwB,CAAC;AAI5D,qBAAa,kBAAkB;IAEvB,OAAO,CAAC,UAAU;IAClB,OAAO,CAAC,cAAc;IACtB,OAAO,CAAC,gBAAgB;IACxB,OAAO,CAAC,cAAc;IACtB,OAAO,CAAC,oBAAoB,CAAC;gBAJrB,UAAU,EAAE,gBAAgB,EAC5B,cAAc,EAAE,cAAc,EAC9B,gBAAgB,EAAE,gBAAgB,EAClC,cAAc,EAAE,cAAc,EAC9B,oBAAoB,CAAC,EAAE,oBAAoB,YAAA;IAGjD,WAAW,CAAC,KAAK,EAAE,WAAW,GAAG,OAAO,CAAC,WAAW,CAAC;IAsBrD,mBAAmB,CAAC,KAAK,EAAE,aAAa,GAAG,OAAO,CAAC,WAAW,CAAC;IA6G/D,mBAAmB,CAAC,KAAK,EAAE,aAAa,GAAG,OAAO,CAAC,WAAW,CAAC;IAU/D,mBAAmB,CAAC,KAAK,EAAE,aAAa,GAAG,OAAO,CAAC,WAAW,CAAC;IAU/D,mBAAmB,CAAC,KAAK,EAAE,aAAa,GAAG,OAAO,CAAC,WAAW,CAAC;IAU/D,qBAAqB,CAAC,KAAK,EAAE,eAAe,GAAG,OAAO,CAAC,WAAW,CAAC;CAS5E"}
1
+ {"version":3,"file":"FriendEventHandler.d.ts","sourceRoot":"","sources":["../src/FriendEventHandler.ts"],"names":[],"mappings":"AAAA,OAAO,EACH,aAAa,EACb,WAAW,EACX,gBAAgB,EAGhB,gBAAgB,EAGhB,cAAc,EAEd,cAAc,EACjB,MAAM,GAAG,CAAC;AACX,OAAO,EAAE,oBAAoB,EAAE,MAAM,wBAAwB,CAAC;AAI9D,qBAAa,kBAAkB;IAEvB,OAAO,CAAC,UAAU;IAClB,OAAO,CAAC,cAAc;IACtB,OAAO,CAAC,gBAAgB;IACxB,OAAO,CAAC,cAAc;IACtB,OAAO,CAAC,oBAAoB,CAAC;gBAJrB,UAAU,EAAE,gBAAgB,EAC5B,cAAc,EAAE,cAAc,EAC9B,gBAAgB,EAAE,gBAAgB,EAClC,cAAc,EAAE,cAAc,EAC9B,oBAAoB,CAAC,EAAE,oBAAoB,YAAA;IAGjD,WAAW,CAAC,KAAK,EAAE,WAAW,GAAG,OAAO,CAAC,IAAI,CAAC;IAwB9C,mBAAmB,CAAC,KAAK,EAAE,aAAa,GAAG,OAAO,CAAC,IAAI,CAAC;CAgJjE"}
@@ -17,19 +17,14 @@ class FriendEventHandler {
17
17
  if (!(0, DomainEvents_1.isValidFriendEventType)(eventType)) {
18
18
  throw new Error(`Unknown friend event type: ${eventType}`);
19
19
  }
20
- switch (eventType) {
21
- case 'FriendCreated':
22
- return await this.handleFriendCreated(event);
23
- case 'FriendUpdated':
24
- return await this.handleFriendUpdated(event);
25
- case 'FriendDeleted':
26
- return await this.handleFriendDeleted(event);
27
- case 'FriendIdAdded':
28
- return await this.handleFriendIdAdded(event);
29
- case 'FriendIdRemoved':
30
- return await this.handleFriendIdRemoved(event);
31
- default:
32
- throw new Error(`Unknown friend event type: ${eventType}`);
20
+ const existingModel = await this.modelStore.getByStreamIdWhereDeletedIsFalse(event.streamId);
21
+ const updatedModel = event.apply(existingModel);
22
+ await this.modelStore.save(updatedModel);
23
+ if (_1.residence.isClient) {
24
+ await this.friendEventStore.addEvent(event);
25
+ if (this.activityEventHandler) {
26
+ await this.activityEventHandler.createActivityLog(event, existingModel, updatedModel);
27
+ }
33
28
  }
34
29
  }
35
30
  async handleFriendCreated(event) {
@@ -48,6 +43,7 @@ class FriendEventHandler {
48
43
  if (friendUser) {
49
44
  // Create FriendIdAdded event for current user
50
45
  const friendIdAddedEvent = new _1.FriendIdAdded({
46
+ eventId: (0, uuid_1.v4)(),
51
47
  userId: event.userId,
52
48
  friendId: friendUser.userId,
53
49
  createdAt: new Date(),
@@ -62,6 +58,7 @@ class FriendEventHandler {
62
58
  const primaryUser = await this.userModelStore.getByStreamIdWhereDeletedIsFalse(event.userId);
63
59
  if (primaryUser) {
64
60
  const reciprocalFriendCreated = new _1.FriendCreated({
61
+ eventId: (0, uuid_1.v4)(),
65
62
  userId: friendUser.userId,
66
63
  friendEmail: primaryUser.email,
67
64
  friendPhoneNumber: primaryUser.phoneNumber,
@@ -70,20 +67,23 @@ class FriendEventHandler {
70
67
  groupId: event.groupId,
71
68
  createdAt: new Date(),
72
69
  createdBy: friendUser.userId,
73
- streamId: `stream-${(0, uuid_1.v4)()}`,
70
+ streamId: (0, uuid_1.v4)(),
74
71
  version: 1,
75
72
  systemGenerated: true,
76
73
  });
77
74
  await this.friendEventStore.addEvent(reciprocalFriendCreated);
78
75
  const reciprocalModel = reciprocalFriendCreated.apply(undefined);
79
76
  await this.modelStore.save(reciprocalModel);
77
+ if (this.activityEventHandler) {
78
+ await this.activityEventHandler.createActivityLog(reciprocalFriendCreated, undefined, reciprocalModel);
79
+ }
80
80
  }
81
- return modelWithFriendId;
82
81
  }
83
82
  else {
84
83
  // Friend user not found - create placeholder user
85
- const placeholderStreamId = `stream-${(0, uuid_1.v4)()}`;
84
+ const placeholderStreamId = (0, uuid_1.v4)();
86
85
  const placeholderUserCreated = new _1.PlaceholderUserCreated({
86
+ eventId: (0, uuid_1.v4)(),
87
87
  userId: placeholderStreamId,
88
88
  displayName: event.friendDisplayName,
89
89
  phoneNumber: event.friendPhoneNumber,
@@ -99,6 +99,7 @@ class FriendEventHandler {
99
99
  await this.userModelStore.save(placeholderUser);
100
100
  // Link primary user to placeholder
101
101
  const friendIdAddedEvent = new _1.FriendIdAdded({
102
+ eventId: (0, uuid_1.v4)(),
102
103
  userId: event.userId,
103
104
  friendId: placeholderStreamId,
104
105
  createdAt: new Date(),
@@ -115,6 +116,7 @@ class FriendEventHandler {
115
116
  if (primaryUser) {
116
117
  const primaryUserModel = primaryUser;
117
118
  const reciprocalFriendCreated = new _1.FriendCreated({
119
+ eventId: (0, uuid_1.v4)(),
118
120
  userId: placeholderStreamId,
119
121
  friendEmail: primaryUserModel.email,
120
122
  friendPhoneNumber: primaryUserModel.phoneNumber,
@@ -123,52 +125,18 @@ class FriendEventHandler {
123
125
  groupId: event.groupId,
124
126
  createdAt: new Date(),
125
127
  createdBy: placeholderStreamId,
126
- streamId: `stream-${(0, uuid_1.v4)()}`,
128
+ streamId: (0, uuid_1.v4)(),
127
129
  version: 1,
128
130
  systemGenerated: true,
129
131
  });
130
132
  await this.friendEventStore.addEvent(reciprocalFriendCreated);
131
133
  const reciprocalModel = reciprocalFriendCreated.apply(undefined);
132
134
  await this.modelStore.save(reciprocalModel);
135
+ if (this.activityEventHandler) {
136
+ await this.activityEventHandler.createActivityLog(reciprocalFriendCreated, undefined, reciprocalModel);
137
+ }
133
138
  }
134
- return modelWithPlaceholderId;
135
- }
136
- }
137
- async handleFriendUpdated(event) {
138
- const existingModel = await this.modelStore.getByStreamIdWhereDeletedIsFalse(event.streamId);
139
- const updatedModel = event.apply(existingModel);
140
- await this.modelStore.save(updatedModel);
141
- if (this.activityEventHandler) {
142
- await this.activityEventHandler.createActivityLog(event, existingModel, updatedModel);
143
- }
144
- return updatedModel;
145
- }
146
- async handleFriendDeleted(event) {
147
- const existingModel = await this.modelStore.getByStreamIdWhereDeletedIsFalse(event.streamId);
148
- const updatedModel = event.apply(existingModel);
149
- await this.modelStore.save(updatedModel);
150
- if (this.activityEventHandler) {
151
- await this.activityEventHandler.createActivityLog(event, existingModel, updatedModel);
152
- }
153
- return updatedModel;
154
- }
155
- async handleFriendIdAdded(event) {
156
- const existingModel = await this.modelStore.getByStreamIdWhereDeletedIsFalse(event.streamId);
157
- const updatedModel = event.apply(existingModel);
158
- await this.modelStore.save(updatedModel);
159
- if (this.activityEventHandler) {
160
- await this.activityEventHandler.createActivityLog(event, existingModel, updatedModel);
161
- }
162
- return updatedModel;
163
- }
164
- async handleFriendIdRemoved(event) {
165
- const existingModel = await this.modelStore.getByStreamIdWhereDeletedIsFalse(event.streamId);
166
- const updatedModel = event.apply(existingModel);
167
- await this.modelStore.save(updatedModel);
168
- if (this.activityEventHandler) {
169
- await this.activityEventHandler.createActivityLog(event, existingModel, updatedModel);
170
139
  }
171
- return updatedModel;
172
140
  }
173
141
  }
174
142
  exports.FriendEventHandler = FriendEventHandler;
@@ -1,6 +1,6 @@
1
- import { FriendEvent } from './common/DomainEvents';
2
- import { Model } from './common/Model';
3
- import { ActivityLogCreatedProps } from './ActivityLogEvents';
1
+ import { FriendEvent } from "./common/DomainEvents";
2
+ import { Model } from "./common/Model";
3
+ import { ActivityLogCreatedProps } from "./ActivityLogEvents";
4
4
  export interface FriendModel extends Model {
5
5
  friendId?: string;
6
6
  friendEmail?: string;
@@ -11,6 +11,7 @@ export interface FriendModel extends Model {
11
11
  updatedAt: Date;
12
12
  }
13
13
  export interface FriendCreatedProps {
14
+ eventId: string;
14
15
  userId: string;
15
16
  friendEmail?: string;
16
17
  friendPhoneNumber?: string;
@@ -24,6 +25,7 @@ export interface FriendCreatedProps {
24
25
  systemGenerated: boolean;
25
26
  }
26
27
  export declare class FriendCreated implements FriendEvent {
28
+ eventId: string;
27
29
  userId: string;
28
30
  friendEmail?: string;
29
31
  friendPhoneNumber?: string;
@@ -40,6 +42,7 @@ export declare class FriendCreated implements FriendEvent {
40
42
  activityLog(_existing?: Model, actorName?: string): ActivityLogCreatedProps | undefined;
41
43
  }
42
44
  export interface FriendUpdatedProps {
45
+ eventId: string;
43
46
  userId: string;
44
47
  friendEmail?: string;
45
48
  friendPhoneNumber?: string;
@@ -51,6 +54,7 @@ export interface FriendUpdatedProps {
51
54
  systemGenerated: boolean;
52
55
  }
53
56
  export declare class FriendUpdated implements FriendEvent {
57
+ eventId: string;
54
58
  userId: string;
55
59
  friendEmail?: string;
56
60
  friendPhoneNumber?: string;
@@ -65,6 +69,7 @@ export declare class FriendUpdated implements FriendEvent {
65
69
  activityLog(existing?: Model, actorName?: string): ActivityLogCreatedProps | undefined;
66
70
  }
67
71
  export interface FriendDeletedProps {
72
+ eventId: string;
68
73
  userId: string;
69
74
  createdAt: Date;
70
75
  createdBy: string;
@@ -73,6 +78,7 @@ export interface FriendDeletedProps {
73
78
  systemGenerated: boolean;
74
79
  }
75
80
  export declare class FriendDeleted implements FriendEvent {
81
+ eventId: string;
76
82
  userId: string;
77
83
  createdAt: Date;
78
84
  createdBy: string;
@@ -84,6 +90,7 @@ export declare class FriendDeleted implements FriendEvent {
84
90
  activityLog(existing?: Model, actorName?: string): ActivityLogCreatedProps | undefined;
85
91
  }
86
92
  export interface FriendIdAddedProps {
93
+ eventId: string;
87
94
  userId: string;
88
95
  friendId: string;
89
96
  createdAt: Date;
@@ -93,6 +100,7 @@ export interface FriendIdAddedProps {
93
100
  systemGenerated: boolean;
94
101
  }
95
102
  export declare class FriendIdAdded implements FriendEvent {
103
+ eventId: string;
96
104
  userId: string;
97
105
  friendId: string;
98
106
  createdAt: Date;
@@ -105,6 +113,7 @@ export declare class FriendIdAdded implements FriendEvent {
105
113
  activityLog(existing?: Model, _actorName?: string): ActivityLogCreatedProps | undefined;
106
114
  }
107
115
  export interface FriendIdRemovedProps {
116
+ eventId: string;
108
117
  userId: string;
109
118
  createdAt: Date;
110
119
  createdBy: string;
@@ -113,6 +122,7 @@ export interface FriendIdRemovedProps {
113
122
  systemGenerated: boolean;
114
123
  }
115
124
  export declare class FriendIdRemoved implements FriendEvent {
125
+ eventId: string;
116
126
  userId: string;
117
127
  createdAt: Date;
118
128
  createdBy: string;
@@ -1 +1 @@
1
- {"version":3,"file":"FriendEvents.d.ts","sourceRoot":"","sources":["../src/FriendEvents.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"FriendEvents.d.ts","sourceRoot":"","sources":["../src/FriendEvents.ts"],"names":[],"mappings":"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"}
@@ -5,6 +5,7 @@ const ActivityLogEvents_1 = require("./ActivityLogEvents");
5
5
  const uuid_1 = require("uuid");
6
6
  class FriendCreated {
7
7
  constructor(props) {
8
+ this.eventId = props.eventId;
8
9
  this.userId = props.userId;
9
10
  this.friendEmail = props.friendEmail;
10
11
  this.friendPhoneNumber = props.friendPhoneNumber;
@@ -33,9 +34,10 @@ class FriendCreated {
33
34
  };
34
35
  }
35
36
  activityLog(_existing, actorName) {
36
- const actor = actorName ?? 'You';
37
+ const actor = actorName ?? "You";
37
38
  const logMessage = `${actor} added friend "${this.friendDisplayName}"`;
38
39
  return {
40
+ eventId: (0, uuid_1.v4)(),
39
41
  userId: this.userId,
40
42
  activityByUid: this.createdBy,
41
43
  sourceStreamId: this.streamId,
@@ -53,6 +55,7 @@ class FriendCreated {
53
55
  exports.FriendCreated = FriendCreated;
54
56
  class FriendUpdated {
55
57
  constructor(props) {
58
+ this.eventId = props.eventId;
56
59
  this.userId = props.userId;
57
60
  this.friendEmail = props.friendEmail;
58
61
  this.friendPhoneNumber = props.friendPhoneNumber;
@@ -65,7 +68,7 @@ class FriendUpdated {
65
68
  }
66
69
  apply(existing) {
67
70
  if (!existing) {
68
- throw new Error('Friend must exist to update');
71
+ throw new Error("Friend must exist to update");
69
72
  }
70
73
  const existingFriend = existing;
71
74
  return {
@@ -82,10 +85,11 @@ class FriendUpdated {
82
85
  return undefined;
83
86
  }
84
87
  const existingFriend = existing;
85
- const actor = actorName ?? 'You';
88
+ const actor = actorName ?? "You";
86
89
  const friendName = this.friendDisplayName ?? existingFriend.friendDisplayName;
87
90
  const logMessage = `${actor} updated friend "${friendName}"`;
88
91
  return {
92
+ eventId: (0, uuid_1.v4)(),
89
93
  userId: existingFriend.userId,
90
94
  activityByUid: this.createdBy,
91
95
  sourceStreamId: this.streamId,
@@ -103,6 +107,7 @@ class FriendUpdated {
103
107
  exports.FriendUpdated = FriendUpdated;
104
108
  class FriendDeleted {
105
109
  constructor(props) {
110
+ this.eventId = props.eventId;
106
111
  this.userId = props.userId;
107
112
  this.createdAt = props.createdAt;
108
113
  this.createdBy = props.createdBy;
@@ -112,7 +117,7 @@ class FriendDeleted {
112
117
  }
113
118
  apply(existing) {
114
119
  if (!existing) {
115
- throw new Error('Friend must exist to delete');
120
+ throw new Error("Friend must exist to delete");
116
121
  }
117
122
  const existingFriend = existing;
118
123
  return {
@@ -127,9 +132,10 @@ class FriendDeleted {
127
132
  return undefined;
128
133
  }
129
134
  const existingFriend = existing;
130
- const actor = actorName ?? 'You';
135
+ const actor = actorName ?? "You";
131
136
  const logMessage = `${actor} removed friend "${existingFriend.friendDisplayName}"`;
132
137
  return {
138
+ eventId: (0, uuid_1.v4)(),
133
139
  userId: existingFriend.userId,
134
140
  activityByUid: this.createdBy,
135
141
  sourceStreamId: this.streamId,
@@ -147,6 +153,7 @@ class FriendDeleted {
147
153
  exports.FriendDeleted = FriendDeleted;
148
154
  class FriendIdAdded {
149
155
  constructor(props) {
156
+ this.eventId = props.eventId;
150
157
  this.userId = props.userId;
151
158
  this.friendId = props.friendId;
152
159
  this.createdAt = props.createdAt;
@@ -157,7 +164,7 @@ class FriendIdAdded {
157
164
  }
158
165
  apply(existing) {
159
166
  if (!existing) {
160
- throw new Error('Friend must exist to add friend ID');
167
+ throw new Error("Friend must exist to add friend ID");
161
168
  }
162
169
  const existingFriend = existing;
163
170
  return {
@@ -174,6 +181,7 @@ class FriendIdAdded {
174
181
  const existingFriend = existing;
175
182
  const logMessage = `Friend "${existingFriend.friendDisplayName}" was linked to their account`;
176
183
  return {
184
+ eventId: (0, uuid_1.v4)(),
177
185
  userId: existingFriend.userId,
178
186
  activityByUid: this.createdBy,
179
187
  sourceStreamId: this.streamId,
@@ -191,6 +199,7 @@ class FriendIdAdded {
191
199
  exports.FriendIdAdded = FriendIdAdded;
192
200
  class FriendIdRemoved {
193
201
  constructor(props) {
202
+ this.eventId = props.eventId;
194
203
  this.userId = props.userId;
195
204
  this.createdAt = props.createdAt;
196
205
  this.createdBy = props.createdBy;
@@ -200,7 +209,7 @@ class FriendIdRemoved {
200
209
  }
201
210
  apply(existing) {
202
211
  if (!existing) {
203
- throw new Error('Friend must exist to remove friend ID');
212
+ throw new Error("Friend must exist to remove friend ID");
204
213
  }
205
214
  const existingFriend = existing;
206
215
  return {
@@ -1,10 +1,10 @@
1
- import { GroupCreated, GroupNameChanged, GroupDescriptionChanged, GroupMembersAdded, GroupMembersRemoved, GroupDeleted, GroupModel, GroupEvent } from '.';
2
- import { GroupModelStore } from '.';
3
- import { FriendModelStore } from '.';
4
- import { UserModelStore } from '.';
5
- import { GroupEventStore } from '.';
6
- import { FriendEventStore } from '.';
7
- import { ActivityEventHandler } from './ActivityEventHandler';
1
+ import { GroupCreated, GroupNameChanged, GroupDescriptionChanged, GroupMembersAdded, GroupMembersRemoved, GroupDeleted, GroupModel, GroupEvent } from ".";
2
+ import { GroupModelStore } from ".";
3
+ import { FriendModelStore } from ".";
4
+ import { UserModelStore } from ".";
5
+ import { GroupEventStore } from ".";
6
+ import { FriendEventStore } from ".";
7
+ import { ActivityEventHandler } from "./ActivityEventHandler";
8
8
  export declare class GroupEventHandler {
9
9
  private modelStore;
10
10
  private friendModelStore;
@@ -1 +1 @@
1
- {"version":3,"file":"GroupEventHandler.d.ts","sourceRoot":"","sources":["../src/GroupEventHandler.ts"],"names":[],"mappings":"AAAA,OAAO,EACH,YAAY,EACZ,gBAAgB,EAChB,uBAAuB,EACvB,iBAAiB,EACjB,mBAAmB,EACnB,YAAY,EACZ,UAAU,EAEV,UAAU,EACb,MAAM,GAAG,CAAC;AACX,OAAO,EAAC,eAAe,EAAC,MAAM,GAAG,CAAC;AAClC,OAAO,EAAC,gBAAgB,EAAC,MAAM,GAAG,CAAC;AACnC,OAAO,EAAC,cAAc,EAAC,MAAM,GAAG,CAAC;AACjC,OAAO,EAAC,eAAe,EAAC,MAAM,GAAG,CAAC;AAClC,OAAO,EAAC,gBAAgB,EAAC,MAAM,GAAG,CAAC;AACnC,OAAO,EAAC,oBAAoB,EAAC,MAAM,wBAAwB,CAAC;AAI5D,qBAAa,iBAAiB;IAEtB,OAAO,CAAC,UAAU;IAClB,OAAO,CAAC,gBAAgB;IACxB,OAAO,CAAC,cAAc;IACtB,OAAO,CAAC,eAAe;IACvB,OAAO,CAAC,gBAAgB;IACxB,OAAO,CAAC,oBAAoB,CAAC;gBALrB,UAAU,EAAE,eAAe,EAC3B,gBAAgB,EAAE,gBAAgB,EAClC,cAAc,EAAE,cAAc,EAC9B,eAAe,EAAE,eAAe,EAChC,gBAAgB,EAAE,gBAAgB,EAClC,oBAAoB,CAAC,EAAE,oBAAoB,YAAA;IAGjD,WAAW,CAAC,KAAK,EAAE,UAAU,GAAG,OAAO,CAAC,UAAU,CAAC;YAwB3C,6BAA6B;IAgErC,kBAAkB,CAAC,KAAK,EAAE,YAAY,GAAG,OAAO,CAAC,UAAU,CAAC;IA+C5D,sBAAsB,CAAC,KAAK,EAAE,gBAAgB,GAAG,OAAO,CAAC,UAAU,CAAC;IA+BpE,6BAA6B,CAAC,KAAK,EAAE,uBAAuB,GAAG,OAAO,CAAC,UAAU,CAAC;IA+BlF,uBAAuB,CAAC,KAAK,EAAE,iBAAiB,GAAG,OAAO,CAAC,UAAU,CAAC;IAsEtE,yBAAyB,CAAC,KAAK,EAAE,mBAAmB,GAAG,OAAO,CAAC,UAAU,CAAC;IA+B1E,kBAAkB,CAAC,KAAK,EAAE,YAAY,GAAG,OAAO,CAAC,UAAU,CAAC;CAWrE"}
1
+ {"version":3,"file":"GroupEventHandler.d.ts","sourceRoot":"","sources":["../src/GroupEventHandler.ts"],"names":[],"mappings":"AAAA,OAAO,EACH,YAAY,EACZ,gBAAgB,EAChB,uBAAuB,EACvB,iBAAiB,EACjB,mBAAmB,EACnB,YAAY,EACZ,UAAU,EAEV,UAAU,EACb,MAAM,GAAG,CAAC;AACX,OAAO,EAAE,eAAe,EAAE,MAAM,GAAG,CAAC;AACpC,OAAO,EAAE,gBAAgB,EAAE,MAAM,GAAG,CAAC;AACrC,OAAO,EAAE,cAAc,EAAE,MAAM,GAAG,CAAC;AACnC,OAAO,EAAE,eAAe,EAAE,MAAM,GAAG,CAAC;AACpC,OAAO,EAAE,gBAAgB,EAAE,MAAM,GAAG,CAAC;AACrC,OAAO,EAAE,oBAAoB,EAAE,MAAM,wBAAwB,CAAC;AAI9D,qBAAa,iBAAiB;IAEtB,OAAO,CAAC,UAAU;IAClB,OAAO,CAAC,gBAAgB;IACxB,OAAO,CAAC,cAAc;IACtB,OAAO,CAAC,eAAe;IACvB,OAAO,CAAC,gBAAgB;IACxB,OAAO,CAAC,oBAAoB,CAAC;gBALrB,UAAU,EAAE,eAAe,EAC3B,gBAAgB,EAAE,gBAAgB,EAClC,cAAc,EAAE,cAAc,EAC9B,eAAe,EAAE,eAAe,EAChC,gBAAgB,EAAE,gBAAgB,EAClC,oBAAoB,CAAC,EAAE,oBAAoB,YAAA;IAGjD,WAAW,CAAC,KAAK,EAAE,UAAU,GAAG,OAAO,CAAC,UAAU,CAAC;YAgC3C,6BAA6B;IAwErC,kBAAkB,CAAC,KAAK,EAAE,YAAY,GAAG,OAAO,CAAC,UAAU,CAAC;IAgE5D,sBAAsB,CAAC,KAAK,EAAE,gBAAgB,GAAG,OAAO,CAAC,UAAU,CAAC;IA4CpE,6BAA6B,CAC/B,KAAK,EAAE,uBAAuB,GAC/B,OAAO,CAAC,UAAU,CAAC;IA4ChB,uBAAuB,CACzB,KAAK,EAAE,iBAAiB,GACzB,OAAO,CAAC,UAAU,CAAC;IAkGhB,yBAAyB,CAC3B,KAAK,EAAE,mBAAmB,GAC3B,OAAO,CAAC,UAAU,CAAC;IA4ChB,kBAAkB,CAAC,KAAK,EAAE,YAAY,GAAG,OAAO,CAAC,UAAU,CAAC;CAkBrE"}