@zeeshan60/event-processor 1.0.13 → 1.0.15

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 (191) hide show
  1. package/dist/ActivityEventHandler.d.ts +5 -5
  2. package/dist/ActivityEventHandler.d.ts.map +1 -1
  3. package/dist/ActivityEventHandler.js +27 -1
  4. package/dist/ActivityLogEvents.d.ts.map +1 -1
  5. package/dist/BaseEventHandler.d.ts +6 -0
  6. package/dist/BaseEventHandler.d.ts.map +1 -0
  7. package/dist/BaseEventHandler.js +2 -0
  8. package/dist/EventProcessorSDK.d.ts +30 -1
  9. package/dist/EventProcessorSDK.d.ts.map +1 -1
  10. package/dist/EventProcessorSDK.js +88 -5
  11. package/dist/FriendEventHandler.d.ts +5 -2
  12. package/dist/FriendEventHandler.d.ts.map +1 -1
  13. package/dist/FriendEventHandler.js +49 -15
  14. package/dist/GroupEventHandler.d.ts +5 -7
  15. package/dist/GroupEventHandler.d.ts.map +1 -1
  16. package/dist/GroupEventHandler.js +96 -18
  17. package/dist/GroupEvents.d.ts.map +1 -1
  18. package/dist/GroupTransactionEventHandler.d.ts +4 -1
  19. package/dist/GroupTransactionEventHandler.d.ts.map +1 -1
  20. package/dist/GroupTransactionEventHandler.js +57 -13
  21. package/dist/GroupTransactionEvents.d.ts.map +1 -1
  22. package/dist/ModelChangeEmitter.d.ts +15 -0
  23. package/dist/ModelChangeEmitter.d.ts.map +1 -0
  24. package/dist/ModelChangeEmitter.js +31 -0
  25. package/dist/TransactionEventHandler.d.ts +6 -4
  26. package/dist/TransactionEventHandler.d.ts.map +1 -1
  27. package/dist/TransactionEventHandler.js +33 -21
  28. package/dist/TransactionEvents.d.ts.map +1 -1
  29. package/dist/UserEventHandler.d.ts +5 -2
  30. package/dist/UserEventHandler.d.ts.map +1 -1
  31. package/dist/UserEventHandler.js +32 -28
  32. package/dist/UserEvents.d.ts.map +1 -1
  33. package/dist/__tests__/test-helpers/IMActivityLogEventStore.d.ts +2 -3
  34. package/dist/__tests__/test-helpers/IMActivityLogEventStore.d.ts.map +1 -1
  35. package/dist/__tests__/test-helpers/IMActivityLogEventStore.js +1 -3
  36. package/dist/__tests__/test-helpers/IMActivityLogModelStore.d.ts +2 -3
  37. package/dist/__tests__/test-helpers/IMActivityLogModelStore.d.ts.map +1 -1
  38. package/dist/__tests__/test-helpers/IMActivityLogModelStore.js +1 -3
  39. package/dist/__tests__/test-helpers/IMFriendEventStore.d.ts +2 -3
  40. package/dist/__tests__/test-helpers/IMFriendEventStore.d.ts.map +1 -1
  41. package/dist/__tests__/test-helpers/IMFriendEventStore.js +1 -3
  42. package/dist/__tests__/test-helpers/IMFriendModelStore.d.ts +2 -3
  43. package/dist/__tests__/test-helpers/IMFriendModelStore.d.ts.map +1 -1
  44. package/dist/__tests__/test-helpers/IMFriendModelStore.js +1 -3
  45. package/dist/__tests__/test-helpers/IMGroupEventStore.d.ts +2 -3
  46. package/dist/__tests__/test-helpers/IMGroupEventStore.d.ts.map +1 -1
  47. package/dist/__tests__/test-helpers/IMGroupEventStore.js +1 -3
  48. package/dist/__tests__/test-helpers/IMGroupModelStore.d.ts +2 -3
  49. package/dist/__tests__/test-helpers/IMGroupModelStore.d.ts.map +1 -1
  50. package/dist/__tests__/test-helpers/IMGroupModelStore.js +1 -3
  51. package/dist/__tests__/test-helpers/IMGroupTransactionEventStore.d.ts +2 -3
  52. package/dist/__tests__/test-helpers/IMGroupTransactionEventStore.d.ts.map +1 -1
  53. package/dist/__tests__/test-helpers/IMGroupTransactionEventStore.js +1 -3
  54. package/dist/__tests__/test-helpers/IMGroupTransactionModelStore.d.ts +2 -3
  55. package/dist/__tests__/test-helpers/IMGroupTransactionModelStore.d.ts.map +1 -1
  56. package/dist/__tests__/test-helpers/IMGroupTransactionModelStore.js +1 -3
  57. package/dist/__tests__/test-helpers/IMTransactionEventStore.d.ts +2 -3
  58. package/dist/__tests__/test-helpers/IMTransactionEventStore.d.ts.map +1 -1
  59. package/dist/__tests__/test-helpers/IMTransactionEventStore.js +1 -3
  60. package/dist/__tests__/test-helpers/IMTransactionModelStore.d.ts +2 -3
  61. package/dist/__tests__/test-helpers/IMTransactionModelStore.d.ts.map +1 -1
  62. package/dist/__tests__/test-helpers/IMTransactionModelStore.js +1 -3
  63. package/dist/__tests__/test-helpers/IMUserEventStore.d.ts +2 -3
  64. package/dist/__tests__/test-helpers/IMUserEventStore.d.ts.map +1 -1
  65. package/dist/__tests__/test-helpers/IMUserEventStore.js +1 -3
  66. package/dist/__tests__/test-helpers/IMUserModelStore.d.ts +2 -3
  67. package/dist/__tests__/test-helpers/IMUserModelStore.d.ts.map +1 -1
  68. package/dist/__tests__/test-helpers/IMUserModelStore.js +1 -3
  69. package/dist/client/controllers/FriendController.d.ts +6 -5
  70. package/dist/client/controllers/FriendController.d.ts.map +1 -1
  71. package/dist/client/controllers/FriendController.js +23 -12
  72. package/dist/client/controllers/TransactionController.d.ts +12 -0
  73. package/dist/client/controllers/TransactionController.d.ts.map +1 -0
  74. package/dist/client/controllers/TransactionController.js +214 -0
  75. package/dist/client/controllers/UserController.d.ts.map +1 -1
  76. package/dist/client/controllers/UserController.js +3 -23
  77. package/dist/client/handlers/UIEventHandler.d.ts +3 -22
  78. package/dist/client/handlers/UIEventHandler.d.ts.map +1 -1
  79. package/dist/client/handlers/UIEventHandler.js +5 -44
  80. package/dist/common/DomainEvents.d.ts +0 -70
  81. package/dist/common/DomainEvents.d.ts.map +1 -1
  82. package/dist/common/DomainEvents.js +0 -89
  83. package/dist/contracts/expenses/index.d.ts.map +1 -1
  84. package/dist/contracts/friends/index.d.ts +1 -1
  85. package/dist/contracts/friends/index.d.ts.map +1 -1
  86. package/dist/contracts/groups/index.d.ts.map +1 -1
  87. package/dist/contracts/transactions/index.d.ts +1 -1
  88. package/dist/contracts/transactions/index.d.ts.map +1 -1
  89. package/dist/converters/ActivityLogConverters.d.ts +9 -0
  90. package/dist/converters/ActivityLogConverters.d.ts.map +1 -0
  91. package/dist/converters/ActivityLogConverters.js +39 -0
  92. package/dist/converters/EventConverterCore.d.ts +67 -0
  93. package/dist/converters/EventConverterCore.d.ts.map +1 -0
  94. package/dist/converters/EventConverterCore.js +59 -0
  95. package/dist/converters/FriendConverters.d.ts +33 -0
  96. package/dist/converters/FriendConverters.d.ts.map +1 -0
  97. package/dist/converters/FriendConverters.js +142 -0
  98. package/dist/converters/GroupConverters.d.ts +39 -0
  99. package/dist/converters/GroupConverters.d.ts.map +1 -0
  100. package/dist/converters/GroupConverters.js +160 -0
  101. package/dist/converters/GroupTransactionConverters.d.ts +57 -0
  102. package/dist/converters/GroupTransactionConverters.d.ts.map +1 -0
  103. package/dist/converters/GroupTransactionConverters.js +249 -0
  104. package/dist/converters/TransactionConverters.d.ts +51 -0
  105. package/dist/converters/TransactionConverters.d.ts.map +1 -0
  106. package/dist/converters/TransactionConverters.js +234 -0
  107. package/dist/converters/UserConverters.d.ts +51 -0
  108. package/dist/converters/UserConverters.d.ts.map +1 -0
  109. package/dist/converters/UserConverters.js +226 -0
  110. package/dist/converters/eventConverter.d.ts +10 -15
  111. package/dist/converters/eventConverter.d.ts.map +1 -1
  112. package/dist/converters/eventConverter.js +96 -352
  113. package/dist/events.d.ts +0 -1
  114. package/dist/events.d.ts.map +1 -1
  115. package/dist/events.js +1 -3
  116. package/dist/index.d.ts +6 -8
  117. package/dist/index.d.ts.map +1 -1
  118. package/dist/index.js +16 -33
  119. package/dist/store/ActivityLogEventStore.d.ts +2 -2
  120. package/dist/store/ActivityLogEventStore.d.ts.map +1 -1
  121. package/dist/store/ActivityLogEventStore.js +0 -4
  122. package/dist/store/ActivityLogModelStore.d.ts +4 -4
  123. package/dist/store/ActivityLogModelStore.d.ts.map +1 -1
  124. package/dist/store/ActivityLogModelStore.js +0 -5
  125. package/dist/store/FriendEventStore.d.ts +2 -2
  126. package/dist/store/FriendEventStore.d.ts.map +1 -1
  127. package/dist/store/FriendEventStore.js +0 -4
  128. package/dist/store/FriendModelStore.d.ts +9 -9
  129. package/dist/store/FriendModelStore.d.ts.map +1 -1
  130. package/dist/store/FriendModelStore.js +0 -5
  131. package/dist/store/GroupEventStore.d.ts +2 -2
  132. package/dist/store/GroupEventStore.d.ts.map +1 -1
  133. package/dist/store/GroupEventStore.js +0 -4
  134. package/dist/store/GroupModelStore.d.ts +6 -6
  135. package/dist/store/GroupModelStore.d.ts.map +1 -1
  136. package/dist/store/GroupModelStore.js +0 -5
  137. package/dist/store/GroupTransactionEventStore.d.ts +2 -2
  138. package/dist/store/GroupTransactionEventStore.d.ts.map +1 -1
  139. package/dist/store/GroupTransactionEventStore.js +0 -4
  140. package/dist/store/GroupTransactionModelStore.d.ts +6 -6
  141. package/dist/store/GroupTransactionModelStore.d.ts.map +1 -1
  142. package/dist/store/GroupTransactionModelStore.js +0 -5
  143. package/dist/store/ModelStore.d.ts +4 -4
  144. package/dist/store/ModelStore.d.ts.map +1 -1
  145. package/dist/store/ModelStore.js +0 -4
  146. package/dist/store/TransactionEventStore.d.ts +2 -2
  147. package/dist/store/TransactionEventStore.d.ts.map +1 -1
  148. package/dist/store/TransactionEventStore.js +0 -4
  149. package/dist/store/TransactionModelStore.d.ts +6 -6
  150. package/dist/store/TransactionModelStore.d.ts.map +1 -1
  151. package/dist/store/TransactionModelStore.js +0 -5
  152. package/dist/store/UserEventStore.d.ts +2 -2
  153. package/dist/store/UserEventStore.d.ts.map +1 -1
  154. package/dist/store/UserEventStore.js +0 -4
  155. package/dist/store/UserModelStore.d.ts +7 -7
  156. package/dist/store/UserModelStore.d.ts.map +1 -1
  157. package/dist/store/UserModelStore.js +0 -5
  158. package/package.json +1 -1
  159. package/dist/__tests__/e2e/setup/firebaseEmulator.d.ts +0 -3
  160. package/dist/__tests__/e2e/setup/firebaseEmulator.d.ts.map +0 -1
  161. package/dist/__tests__/e2e/setup/firebaseEmulator.js +0 -87
  162. package/dist/__tests__/e2e/setup/firestoreStores.d.ts +0 -28
  163. package/dist/__tests__/e2e/setup/firestoreStores.d.ts.map +0 -1
  164. package/dist/__tests__/e2e/setup/firestoreStores.js +0 -276
  165. package/dist/__tests__/e2e/setup/firestoreTestHelpers.d.ts +0 -15
  166. package/dist/__tests__/e2e/setup/firestoreTestHelpers.d.ts.map +0 -1
  167. package/dist/__tests__/e2e/setup/firestoreTestHelpers.js +0 -167
  168. package/dist/adapters/FirebaseAdminAdapter.d.ts +0 -8
  169. package/dist/adapters/FirebaseAdminAdapter.d.ts.map +0 -1
  170. package/dist/adapters/FirebaseAdminAdapter.js +0 -21
  171. package/dist/adapters/FirebaseClientAdapter.d.ts +0 -8
  172. package/dist/adapters/FirebaseClientAdapter.d.ts.map +0 -1
  173. package/dist/adapters/FirebaseClientAdapter.js +0 -22
  174. package/dist/client/handlers/UIActivityEventHandler.d.ts +0 -12
  175. package/dist/client/handlers/UIActivityEventHandler.d.ts.map +0 -1
  176. package/dist/client/handlers/UIActivityEventHandler.js +0 -14
  177. package/dist/common/EventBus.d.ts +0 -12
  178. package/dist/common/EventBus.d.ts.map +0 -1
  179. package/dist/common/EventBus.js +0 -26
  180. package/dist/common/EventBusSingleton.d.ts +0 -4
  181. package/dist/common/EventBusSingleton.d.ts.map +0 -1
  182. package/dist/common/EventBusSingleton.js +0 -18
  183. package/dist/config/environment.d.ts +0 -25
  184. package/dist/config/environment.d.ts.map +0 -1
  185. package/dist/config/environment.js +0 -77
  186. package/dist/controllers/UIEventHandler.d.ts +0 -25
  187. package/dist/controllers/UIEventHandler.d.ts.map +0 -1
  188. package/dist/controllers/UIEventHandler.js +0 -50
  189. package/dist/controllers/UserController.d.ts +0 -9
  190. package/dist/controllers/UserController.d.ts.map +0 -1
  191. package/dist/controllers/UserController.js +0 -36
@@ -1,361 +1,105 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.EventConverterFactory = void 0;
3
4
  exports.eventToFirestore = eventToFirestore;
4
5
  exports.firestoreToEvent = firestoreToEvent;
5
- const events_1 = require("../events");
6
- const MAIN_TYPE_TO_EVENT_TYPES = {
7
- transaction: [
8
- "TransactionCreated",
9
- "TransactionDeleted",
10
- "DescriptionChanged",
11
- "TotalAmountChanged",
12
- "SplitTypeChanged",
13
- ],
14
- user: [
15
- "UserCreated",
16
- "PlaceholderUserCreated",
17
- "UserCurrencyChanged",
18
- "UserPhoneNumberChanged",
19
- "UserDisplayNameChanged",
20
- "UserDeleted",
21
- "UserConvertedToPlaceholder",
22
- ],
23
- friend: [
24
- "FriendCreated",
25
- "FriendUpdated",
26
- "FriendDeleted",
27
- "FriendIdAdded",
28
- "FriendIdRemoved",
29
- ],
30
- activityLog: ["ActivityLogCreated"],
31
- };
32
- function getMainTypeForEvent(eventType) {
33
- for (const [mainType, eventTypes] of Object.entries(MAIN_TYPE_TO_EVENT_TYPES)) {
34
- if (eventTypes.includes(eventType)) {
35
- return mainType;
6
+ const TransactionConverters_1 = require("./TransactionConverters");
7
+ const UserConverters_1 = require("./UserConverters");
8
+ const FriendConverters_1 = require("./FriendConverters");
9
+ const GroupConverters_1 = require("./GroupConverters");
10
+ const ActivityLogConverters_1 = require("./ActivityLogConverters");
11
+ const GroupTransactionConverters_1 = require("./GroupTransactionConverters");
12
+ /**
13
+ * Factory for getting the appropriate EventConverter based on event type
14
+ */
15
+ class EventConverterFactory {
16
+ static getConverter(eventType) {
17
+ switch (eventType) {
18
+ case "TransactionCreated":
19
+ return new TransactionConverters_1.TransactionCreatedConverter();
20
+ case "TransactionDeleted":
21
+ return new TransactionConverters_1.TransactionDeletedConverter();
22
+ case "DescriptionChanged":
23
+ return new TransactionConverters_1.DescriptionChangedConverter();
24
+ case "TotalAmountChanged":
25
+ return new TransactionConverters_1.TotalAmountChangedConverter();
26
+ case "SplitTypeChanged":
27
+ return new TransactionConverters_1.SplitTypeChangedConverter();
28
+ case "CurrencyChanged":
29
+ return new TransactionConverters_1.CurrencyChangedConverter();
30
+ case "TransactionDateChanged":
31
+ return new TransactionConverters_1.TransactionDateChangedConverter();
32
+ case "TransactionDetailsChanged":
33
+ return new TransactionConverters_1.TransactionDetailsChangedConverter();
34
+ case "UserCreated":
35
+ return new UserConverters_1.UserCreatedConverter();
36
+ case "PlaceholderUserCreated":
37
+ return new UserConverters_1.PlaceholderUserCreatedConverter();
38
+ case "UserCurrencyChanged":
39
+ return new UserConverters_1.UserCurrencyChangedConverter();
40
+ case "UserPhoneNumberChanged":
41
+ return new UserConverters_1.UserPhoneNumberChangedConverter();
42
+ case "UserDisplayNameChanged":
43
+ return new UserConverters_1.UserDisplayNameChangedConverter();
44
+ case "UserDeleted":
45
+ return new UserConverters_1.UserDeletedConverter();
46
+ case "PlaceholderUserMerged":
47
+ return new UserConverters_1.PlaceholderUserMergedConverter();
48
+ case "UserConvertedToPlaceholder":
49
+ return new UserConverters_1.UserConvertedToPlaceholderConverter();
50
+ case "FriendCreated":
51
+ return new FriendConverters_1.FriendCreatedConverter();
52
+ case "FriendUpdated":
53
+ return new FriendConverters_1.FriendUpdatedConverter();
54
+ case "FriendDeleted":
55
+ return new FriendConverters_1.FriendDeletedConverter();
56
+ case "FriendIdAdded":
57
+ return new FriendConverters_1.FriendIdAddedConverter();
58
+ case "FriendIdRemoved":
59
+ return new FriendConverters_1.FriendIdRemovedConverter();
60
+ case "GroupCreated":
61
+ return new GroupConverters_1.GroupCreatedConverter();
62
+ case "GroupNameChanged":
63
+ return new GroupConverters_1.GroupNameChangedConverter();
64
+ case "GroupDescriptionChanged":
65
+ return new GroupConverters_1.GroupDescriptionChangedConverter();
66
+ case "GroupMembersAdded":
67
+ return new GroupConverters_1.GroupMembersAddedConverter();
68
+ case "GroupMembersRemoved":
69
+ return new GroupConverters_1.GroupMembersRemovedConverter();
70
+ case "GroupDeleted":
71
+ return new GroupConverters_1.GroupDeletedConverter();
72
+ case "GroupTransactionCreated":
73
+ return new GroupTransactionConverters_1.GroupTransactionCreatedConverter();
74
+ case "GroupTransactionDeleted":
75
+ return new GroupTransactionConverters_1.GroupTransactionDeletedConverter();
76
+ case "GroupTransactionDescriptionChanged":
77
+ return new GroupTransactionConverters_1.GroupTransactionDescriptionChangedConverter();
78
+ case "GroupTransactionNotesChanged":
79
+ return new GroupTransactionConverters_1.GroupTransactionNotesChangedConverter();
80
+ case "GroupTransactionTotalAmountChanged":
81
+ return new GroupTransactionConverters_1.GroupTransactionTotalAmountChangedConverter();
82
+ case "GroupTransactionCurrencyChanged":
83
+ return new GroupTransactionConverters_1.GroupTransactionCurrencyChangedConverter();
84
+ case "GroupTransactionSplitTypeChanged":
85
+ return new GroupTransactionConverters_1.GroupTransactionSplitTypeChangedConverter();
86
+ case "GroupTransactionDateChanged":
87
+ return new GroupTransactionConverters_1.GroupTransactionDateChangedConverter();
88
+ case "GroupTransactionSplitDetailsChanged":
89
+ return new GroupTransactionConverters_1.GroupTransactionSplitDetailsChangedConverter();
90
+ case "ActivityLogCreated":
91
+ return new ActivityLogConverters_1.ActivityLogCreatedConverter();
92
+ default:
93
+ throw new Error(`No converter for event type: ${eventType}`);
36
94
  }
37
95
  }
38
- throw new Error(`Unknown event type: ${eventType}`);
39
96
  }
40
- function eventToFirestore(event, firebaseAdapter) {
41
- const eventType = event.constructor.name;
42
- const eventMainType = getMainTypeForEvent(eventType);
43
- const eventData = {
44
- eventId: event.eventId,
45
- userId: event.userId,
46
- streamId: event.streamId,
47
- version: event.version,
48
- createdAt: firebaseAdapter.fromDate(event.createdAt),
49
- createdBy: event.createdBy,
50
- eventType,
51
- eventMainType,
52
- systemGenerated: true,
53
- };
54
- if (eventType === "TransactionCreated") {
55
- const txEvent = event;
56
- eventData.recipientUserId = txEvent.recipientUserId;
57
- eventData.logicalTransactionId = txEvent.logicalTransactionId;
58
- eventData.description = txEvent.description;
59
- eventData.currency = txEvent.currency;
60
- eventData.splitType = txEvent.splitType;
61
- eventData.totalAmount = txEvent.totalAmount;
62
- eventData.amount = txEvent.amount;
63
- eventData.isOwed = txEvent.isOwed;
64
- eventData.transactionDate = firebaseAdapter.fromDate(txEvent.transactionDate);
65
- eventData.groupId = txEvent.groupId;
66
- eventData.groupTransactionId = txEvent.groupTransactionId;
67
- }
68
- if (eventType === "DescriptionChanged") {
69
- const txEvent = event;
70
- eventData.description = txEvent.description;
71
- }
72
- if (eventType === "TotalAmountChanged") {
73
- const txEvent = event;
74
- eventData.totalAmount = txEvent.totalAmount;
75
- }
76
- if (eventType === "SplitTypeChanged") {
77
- const txEvent = event;
78
- eventData.splitType = txEvent.splitType;
79
- eventData.totalAmount = txEvent.totalAmount;
80
- eventData.amount = txEvent.amount;
81
- eventData.isOwed = txEvent.isOwed;
82
- }
83
- if (eventType === "UserCreated") {
84
- const userEvent = event;
85
- eventData.firebaseUid = userEvent.firebaseUid;
86
- eventData.displayName = userEvent.displayName;
87
- eventData.phoneNumber = userEvent.phoneNumber;
88
- eventData.email = userEvent.email;
89
- eventData.photoUrl = userEvent.photoUrl;
90
- eventData.emailVerified = userEvent.emailVerified;
91
- }
92
- if (eventType === "PlaceholderUserCreated") {
93
- const userEvent = event;
94
- eventData.displayName = userEvent.displayName;
95
- eventData.phoneNumber = userEvent.phoneNumber;
96
- eventData.email = userEvent.email;
97
- }
98
- if (eventType === "UserCurrencyChanged") {
99
- const userEvent = event;
100
- eventData.currency = userEvent.currency;
101
- }
102
- if (eventType === "UserPhoneNumberChanged") {
103
- const userEvent = event;
104
- eventData.phoneNumber = userEvent.phoneNumber;
105
- }
106
- if (eventType === "UserDisplayNameChanged") {
107
- const userEvent = event;
108
- eventData.displayName = userEvent.displayName;
109
- }
110
- if (eventType === "FriendCreated") {
111
- const friendEvent = event;
112
- eventData.friendEmail = friendEvent.friendEmail;
113
- eventData.friendPhoneNumber = friendEvent.friendPhoneNumber;
114
- eventData.friendDisplayName = friendEvent.friendDisplayName;
115
- eventData.friendId = friendEvent.friendId;
116
- eventData.groupId = friendEvent.groupId;
117
- }
118
- if (eventType === "FriendUpdated") {
119
- const friendEvent = event;
120
- eventData.friendEmail = friendEvent.friendEmail;
121
- eventData.friendPhoneNumber = friendEvent.friendPhoneNumber;
122
- eventData.friendDisplayName = friendEvent.friendDisplayName;
123
- }
124
- if (eventType === "FriendIdAdded") {
125
- const friendEvent = event;
126
- eventData.friendId = friendEvent.friendId;
127
- }
128
- return eventData;
97
+ exports.EventConverterFactory = EventConverterFactory;
98
+ function eventToFirestore(event) {
99
+ const converter = EventConverterFactory.getConverter(event.constructor.name);
100
+ return converter.toFirestoreData(event);
129
101
  }
130
- function firestoreToEvent(data, firebaseAdapter) {
131
- const eventType = data.eventType;
132
- if (eventType === "TransactionCreated") {
133
- return new events_1.TransactionCreated({
134
- eventId: data.eventId,
135
- userId: data.userId,
136
- recipientUserId: data.recipientUserId,
137
- logicalTransactionId: data.logicalTransactionId,
138
- description: data.description,
139
- currency: data.currency,
140
- splitType: data.splitType,
141
- totalAmount: data.totalAmount,
142
- amount: data.amount,
143
- isOwed: data.isOwed,
144
- transactionDate: firebaseAdapter.toDate(data.transactionDate),
145
- groupId: data.groupId,
146
- groupTransactionId: data.groupTransactionId,
147
- createdAt: firebaseAdapter.toDate(data.createdAt),
148
- createdBy: data.createdBy,
149
- streamId: data.streamId,
150
- version: data.version,
151
- systemGenerated: data.systemGenerated ?? true,
152
- });
153
- }
154
- if (eventType === "TransactionDeleted") {
155
- return new events_1.TransactionDeleted({
156
- eventId: data.eventId,
157
- userId: data.userId,
158
- createdAt: firebaseAdapter.toDate(data.createdAt),
159
- createdBy: data.createdBy,
160
- streamId: data.streamId,
161
- version: data.version,
162
- systemGenerated: data.systemGenerated ?? true,
163
- });
164
- }
165
- if (eventType === "DescriptionChanged") {
166
- return new events_1.DescriptionChanged({
167
- eventId: data.eventId,
168
- userId: data.userId,
169
- description: data.description,
170
- createdAt: firebaseAdapter.toDate(data.createdAt),
171
- createdBy: data.createdBy,
172
- streamId: data.streamId,
173
- version: data.version,
174
- systemGenerated: data.systemGenerated ?? true,
175
- });
176
- }
177
- if (eventType === "TotalAmountChanged") {
178
- return new events_1.TotalAmountChanged({
179
- eventId: data.eventId,
180
- userId: data.userId,
181
- totalAmount: data.totalAmount,
182
- createdAt: firebaseAdapter.toDate(data.createdAt),
183
- createdBy: data.createdBy,
184
- streamId: data.streamId,
185
- version: data.version,
186
- systemGenerated: data.systemGenerated ?? true,
187
- });
188
- }
189
- if (eventType === "SplitTypeChanged") {
190
- return new events_1.SplitTypeChanged({
191
- eventId: data.eventId,
192
- userId: data.userId,
193
- splitType: data.splitType,
194
- totalAmount: data.totalAmount,
195
- amount: data.amount,
196
- isOwed: data.isOwed,
197
- createdAt: firebaseAdapter.toDate(data.createdAt),
198
- createdBy: data.createdBy,
199
- streamId: data.streamId,
200
- version: data.version,
201
- systemGenerated: data.systemGenerated ?? true,
202
- });
203
- }
204
- if (eventType === "UserCreated") {
205
- return new events_1.UserCreated({
206
- eventId: data.eventId,
207
- userId: data.userId,
208
- firebaseUid: data.firebaseUid,
209
- displayName: data.displayName,
210
- phoneNumber: data.phoneNumber,
211
- email: data.email,
212
- photoUrl: data.photoUrl,
213
- emailVerified: data.emailVerified,
214
- createdAt: firebaseAdapter.toDate(data.createdAt),
215
- createdBy: data.createdBy,
216
- streamId: data.streamId,
217
- version: data.version,
218
- systemGenerated: data.systemGenerated ?? true,
219
- });
220
- }
221
- if (eventType === "PlaceholderUserCreated") {
222
- return new events_1.PlaceholderUserCreated({
223
- eventId: data.eventId,
224
- userId: data.userId,
225
- displayName: data.displayName,
226
- phoneNumber: data.phoneNumber,
227
- email: data.email,
228
- createdAt: firebaseAdapter.toDate(data.createdAt),
229
- createdBy: data.createdBy,
230
- streamId: data.streamId,
231
- version: data.version,
232
- systemGenerated: data.systemGenerated ?? true,
233
- });
234
- }
235
- if (eventType === "UserCurrencyChanged") {
236
- return new events_1.UserCurrencyChanged({
237
- eventId: data.eventId,
238
- userId: data.userId,
239
- currency: data.currency,
240
- createdAt: firebaseAdapter.toDate(data.createdAt),
241
- createdBy: data.createdBy,
242
- streamId: data.streamId,
243
- version: data.version,
244
- systemGenerated: data.systemGenerated ?? true,
245
- });
246
- }
247
- if (eventType === "UserPhoneNumberChanged") {
248
- return new events_1.UserPhoneNumberChanged({
249
- eventId: data.eventId,
250
- userId: data.userId,
251
- phoneNumber: data.phoneNumber,
252
- createdAt: firebaseAdapter.toDate(data.createdAt),
253
- createdBy: data.createdBy,
254
- streamId: data.streamId,
255
- version: data.version,
256
- systemGenerated: data.systemGenerated ?? true,
257
- });
258
- }
259
- if (eventType === "UserDisplayNameChanged") {
260
- return new events_1.UserDisplayNameChanged({
261
- eventId: data.eventId,
262
- userId: data.userId,
263
- displayName: data.displayName,
264
- createdAt: firebaseAdapter.toDate(data.createdAt),
265
- createdBy: data.createdBy,
266
- streamId: data.streamId,
267
- version: data.version,
268
- systemGenerated: data.systemGenerated ?? true,
269
- });
270
- }
271
- if (eventType === "UserDeleted") {
272
- return new events_1.UserDeleted({
273
- eventId: data.eventId,
274
- userId: data.userId,
275
- createdAt: firebaseAdapter.toDate(data.createdAt),
276
- createdBy: data.createdBy,
277
- streamId: data.streamId,
278
- version: data.version,
279
- systemGenerated: data.systemGenerated ?? true,
280
- });
281
- }
282
- if (eventType === "UserConvertedToPlaceholder") {
283
- return new events_1.UserConvertedToPlaceholder({
284
- eventId: data.eventId,
285
- userId: data.userId,
286
- createdAt: firebaseAdapter.toDate(data.createdAt),
287
- createdBy: data.createdBy,
288
- streamId: data.streamId,
289
- version: data.version,
290
- systemGenerated: data.systemGenerated ?? true,
291
- });
292
- }
293
- if (eventType === "FriendCreated") {
294
- if (!data.userId) {
295
- throw new Error("userId is required for FriendCreated event");
296
- }
297
- return new events_1.FriendCreated({
298
- eventId: data.eventId,
299
- userId: data.userId,
300
- friendEmail: data.friendEmail,
301
- friendPhoneNumber: data.friendPhoneNumber,
302
- friendDisplayName: data.friendDisplayName,
303
- friendId: data.friendId,
304
- groupId: data.groupId,
305
- createdAt: firebaseAdapter.toDate(data.createdAt),
306
- createdBy: data.createdBy,
307
- streamId: data.streamId,
308
- version: data.version,
309
- systemGenerated: data.systemGenerated ?? true,
310
- });
311
- }
312
- if (eventType === "FriendUpdated") {
313
- return new events_1.FriendUpdated({
314
- eventId: data.eventId,
315
- userId: data.userId,
316
- friendEmail: data.friendEmail,
317
- friendPhoneNumber: data.friendPhoneNumber,
318
- friendDisplayName: data.friendDisplayName,
319
- createdAt: firebaseAdapter.toDate(data.createdAt),
320
- createdBy: data.createdBy,
321
- streamId: data.streamId,
322
- version: data.version,
323
- systemGenerated: data.systemGenerated ?? true,
324
- });
325
- }
326
- if (eventType === "FriendDeleted") {
327
- return new events_1.FriendDeleted({
328
- eventId: data.eventId,
329
- userId: data.userId,
330
- createdAt: firebaseAdapter.toDate(data.createdAt),
331
- createdBy: data.createdBy,
332
- streamId: data.streamId,
333
- version: data.version,
334
- systemGenerated: data.systemGenerated ?? true,
335
- });
336
- }
337
- if (eventType === "FriendIdAdded") {
338
- return new events_1.FriendIdAdded({
339
- eventId: data.eventId,
340
- userId: data.userId,
341
- friendId: data.friendId,
342
- createdAt: firebaseAdapter.toDate(data.createdAt),
343
- createdBy: data.createdBy,
344
- streamId: data.streamId,
345
- version: data.version,
346
- systemGenerated: data.systemGenerated ?? true,
347
- });
348
- }
349
- if (eventType === "FriendIdRemoved") {
350
- return new events_1.FriendIdRemoved({
351
- eventId: data.eventId,
352
- userId: data.userId,
353
- createdAt: firebaseAdapter.toDate(data.createdAt),
354
- createdBy: data.createdBy,
355
- streamId: data.streamId,
356
- version: data.version,
357
- systemGenerated: data.systemGenerated ?? true,
358
- });
359
- }
360
- throw new Error(`Unknown event type: ${eventType}`);
102
+ function firestoreToEvent(data) {
103
+ const converter = EventConverterFactory.getConverter(data.eventType);
104
+ return converter.fromFirestoreData(data);
361
105
  }
package/dist/events.d.ts CHANGED
@@ -26,5 +26,4 @@ export { GroupEventHandler } from "./GroupEventHandler";
26
26
  export { GroupTransactionEventHandler } from "./GroupTransactionEventHandler";
27
27
  export { ActivityEventHandler } from "./ActivityEventHandler";
28
28
  export { reverseSplitType, calculateMirrorAmountAndIsOwed, } from "./utils/splitTypeUtils";
29
- export { getUserEventPath } from "./utils/userPathUtils";
30
29
  //# sourceMappingURL=events.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"events.d.ts","sourceRoot":"","sources":["../src/events.ts"],"names":[],"mappings":"AACA,cAAc,qBAAqB,CAAC;AACpC,cAAc,cAAc,CAAC;AAC7B,cAAc,gBAAgB,CAAC;AAC/B,cAAc,eAAe,CAAC;AAC9B,cAAc,0BAA0B,CAAC;AACzC,cAAc,qBAAqB,CAAC;AAGpC,cAAc,gBAAgB,CAAC;AAC/B,cAAc,gBAAgB,CAAC;AAG/B,cAAc,oBAAoB,CAAC;AACnC,cAAc,+BAA+B,CAAC;AAC9C,cAAc,+BAA+B,CAAC;AAC9C,cAAc,wBAAwB,CAAC;AACvC,cAAc,wBAAwB,CAAC;AACvC,cAAc,0BAA0B,CAAC;AACzC,cAAc,0BAA0B,CAAC;AACzC,cAAc,yBAAyB,CAAC;AACxC,cAAc,yBAAyB,CAAC;AACxC,cAAc,oCAAoC,CAAC;AACnD,cAAc,oCAAoC,CAAC;AACnD,cAAc,+BAA+B,CAAC;AAC9C,cAAc,+BAA+B,CAAC;AAG9C,OAAO,EAAE,uBAAuB,EAAE,MAAM,2BAA2B,CAAC;AACpE,OAAO,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AACtD,OAAO,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AAC1D,OAAO,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAC;AACxD,OAAO,EAAE,4BAA4B,EAAE,MAAM,gCAAgC,CAAC;AAC9E,OAAO,EAAE,oBAAoB,EAAE,MAAM,wBAAwB,CAAC;AAG9D,OAAO,EACH,gBAAgB,EAChB,8BAA8B,GACjC,MAAM,wBAAwB,CAAC;AAChC,OAAO,EAAE,gBAAgB,EAAE,MAAM,uBAAuB,CAAC"}
1
+ {"version":3,"file":"events.d.ts","sourceRoot":"","sources":["../src/events.ts"],"names":[],"mappings":"AACA,cAAc,qBAAqB,CAAC;AACpC,cAAc,cAAc,CAAC;AAC7B,cAAc,gBAAgB,CAAC;AAC/B,cAAc,eAAe,CAAC;AAC9B,cAAc,0BAA0B,CAAC;AACzC,cAAc,qBAAqB,CAAC;AAGpC,cAAc,gBAAgB,CAAC;AAC/B,cAAc,gBAAgB,CAAC;AAG/B,cAAc,oBAAoB,CAAC;AACnC,cAAc,+BAA+B,CAAC;AAC9C,cAAc,+BAA+B,CAAC;AAC9C,cAAc,wBAAwB,CAAC;AACvC,cAAc,wBAAwB,CAAC;AACvC,cAAc,0BAA0B,CAAC;AACzC,cAAc,0BAA0B,CAAC;AACzC,cAAc,yBAAyB,CAAC;AACxC,cAAc,yBAAyB,CAAC;AACxC,cAAc,oCAAoC,CAAC;AACnD,cAAc,oCAAoC,CAAC;AACnD,cAAc,+BAA+B,CAAC;AAC9C,cAAc,+BAA+B,CAAC;AAG9C,OAAO,EAAE,uBAAuB,EAAE,MAAM,2BAA2B,CAAC;AACpE,OAAO,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AACtD,OAAO,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AAC1D,OAAO,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAC;AACxD,OAAO,EAAE,4BAA4B,EAAE,MAAM,gCAAgC,CAAC;AAC9E,OAAO,EAAE,oBAAoB,EAAE,MAAM,wBAAwB,CAAC;AAG9D,OAAO,EACH,gBAAgB,EAChB,8BAA8B,GACjC,MAAM,wBAAwB,CAAC"}
package/dist/events.js CHANGED
@@ -14,7 +14,7 @@ var __exportStar = (this && this.__exportStar) || function(m, exports) {
14
14
  for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
15
15
  };
16
16
  Object.defineProperty(exports, "__esModule", { value: true });
17
- exports.getUserEventPath = exports.calculateMirrorAmountAndIsOwed = exports.reverseSplitType = exports.ActivityEventHandler = exports.GroupTransactionEventHandler = exports.GroupEventHandler = exports.FriendEventHandler = exports.UserEventHandler = exports.TransactionEventHandler = void 0;
17
+ exports.calculateMirrorAmountAndIsOwed = exports.reverseSplitType = exports.ActivityEventHandler = exports.GroupTransactionEventHandler = exports.GroupEventHandler = exports.FriendEventHandler = exports.UserEventHandler = exports.TransactionEventHandler = void 0;
18
18
  // Re-export all event types
19
19
  __exportStar(require("./TransactionEvents"), exports);
20
20
  __exportStar(require("./UserEvents"), exports);
@@ -56,5 +56,3 @@ Object.defineProperty(exports, "ActivityEventHandler", { enumerable: true, get:
56
56
  var splitTypeUtils_1 = require("./utils/splitTypeUtils");
57
57
  Object.defineProperty(exports, "reverseSplitType", { enumerable: true, get: function () { return splitTypeUtils_1.reverseSplitType; } });
58
58
  Object.defineProperty(exports, "calculateMirrorAmountAndIsOwed", { enumerable: true, get: function () { return splitTypeUtils_1.calculateMirrorAmountAndIsOwed; } });
59
- var userPathUtils_1 = require("./utils/userPathUtils");
60
- Object.defineProperty(exports, "getUserEventPath", { enumerable: true, get: function () { return userPathUtils_1.getUserEventPath; } });
package/dist/index.d.ts CHANGED
@@ -1,17 +1,15 @@
1
1
  export * from "./events";
2
- export { TransactionEvent, UserEvent, FriendEvent, GroupEvent, GroupTransactionEvent, ActivityLogEvent, UserEventTypes, FriendEventTypes, TransactionEventTypes, GroupEventTypes, GroupTransactionEventTypes, ActivityLogEventTypes, VALID_USER_EVENT_TYPES, VALID_FRIEND_EVENT_TYPES, VALID_TRANSACTION_EVENT_TYPES, VALID_GROUP_EVENT_TYPES, VALID_GROUP_TRANSACTION_EVENT_TYPES, VALID_ACTIVITY_LOG_EVENT_TYPES, isValidUserEventType, isValidFriendEventType, isValidTransactionEventType, isValidGroupEventType, isValidGroupTransactionEventType, isValidActivityLogEventType, } from "./common/DomainEvents";
2
+ export { BaseEventHandler } from "./BaseEventHandler";
3
+ export { TransactionEvent, UserEvent, FriendEvent, GroupEvent, GroupTransactionEvent, ActivityLogEvent, } from "./common/DomainEvents";
3
4
  export { UserController } from "./client/controllers/UserController";
4
5
  export { FriendController } from "./client/controllers/FriendController";
6
+ export { TransactionController } from "./client/controllers/TransactionController";
5
7
  export { UIEventHandler } from "./client/handlers/UIEventHandler";
6
- export { UIUserEventHandler } from "./client/handlers/UIUserEventHandler";
7
- export { UITransactionEventHandler } from "./client/handlers/UITransactionEventHandler";
8
- export { UIFriendEventHandler } from "./client/handlers/UIFriendEventHandler";
9
- export { UIGroupEventHandler } from "./client/handlers/UIGroupEventHandler";
10
- export { UIGroupTransactionEventHandler } from "./client/handlers/UIGroupTransactionEventHandler";
11
- export { EventProcessorSDK, initializeSDK, getUserController, getFriendController, getUIEventHandler, getFirebaseAdapter, eventToFirestore, firestoreToEvent, isSDKInitialized, StoreConfig, } from "./EventProcessorSDK";
8
+ export { EventProcessorSDK, initializeSDK, getUserController, getFriendController, getTransactionController, getUIEventHandler, getUserEventHandler, getFriendEventHandler, getTransactionEventHandler, getGroupEventHandler, getGroupTransactionEventHandler, getActivityEventHandler, getFirebaseAdapter, getModelChangeObservable, eventToFirestore, firestoreToEvent, isSDKInitialized, StoreConfig, } from "./EventProcessorSDK";
9
+ export { ModelChangeEmitter, ModelChange } from "./ModelChangeEmitter";
12
10
  export { FirebaseAdapter } from "./adapters/FirebaseAdapter";
13
11
  export type { FirestoreEventData } from "./converters/eventConverter";
14
- export { resetEventBus } from "./common/EventBusSingleton";
12
+ export { EventConverterFactory } from "./converters/eventConverter";
15
13
  export { __resetSDKForTesting } from "./EventProcessorSDK";
16
14
  export declare const residence: {
17
15
  isClient: boolean;
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AACA,cAAc,UAAU,CAAC;AAGzB,OAAO,EACH,gBAAgB,EAChB,SAAS,EACT,WAAW,EACX,UAAU,EACV,qBAAqB,EACrB,gBAAgB,EAChB,cAAc,EACd,gBAAgB,EAChB,qBAAqB,EACrB,eAAe,EACf,0BAA0B,EAC1B,qBAAqB,EACrB,sBAAsB,EACtB,wBAAwB,EACxB,6BAA6B,EAC7B,uBAAuB,EACvB,mCAAmC,EACnC,8BAA8B,EAC9B,oBAAoB,EACpB,sBAAsB,EACtB,2BAA2B,EAC3B,qBAAqB,EACrB,gCAAgC,EAChC,2BAA2B,GAC9B,MAAM,uBAAuB,CAAC;AAG/B,OAAO,EAAE,cAAc,EAAE,MAAM,qCAAqC,CAAC;AACrE,OAAO,EAAE,gBAAgB,EAAE,MAAM,uCAAuC,CAAC;AAGzE,OAAO,EAAE,cAAc,EAAE,MAAM,kCAAkC,CAAC;AAClE,OAAO,EAAE,kBAAkB,EAAE,MAAM,sCAAsC,CAAC;AAC1E,OAAO,EAAE,yBAAyB,EAAE,MAAM,6CAA6C,CAAC;AACxF,OAAO,EAAE,oBAAoB,EAAE,MAAM,wCAAwC,CAAC;AAC9E,OAAO,EAAE,mBAAmB,EAAE,MAAM,uCAAuC,CAAC;AAC5E,OAAO,EAAE,8BAA8B,EAAE,MAAM,kDAAkD,CAAC;AAGlG,OAAO,EACH,iBAAiB,EACjB,aAAa,EACb,iBAAiB,EACjB,mBAAmB,EACnB,iBAAiB,EACjB,kBAAkB,EAClB,gBAAgB,EAChB,gBAAgB,EAChB,gBAAgB,EAChB,WAAW,GACd,MAAM,qBAAqB,CAAC;AAG7B,OAAO,EAAE,eAAe,EAAE,MAAM,4BAA4B,CAAC;AAG7D,YAAY,EAAE,kBAAkB,EAAE,MAAM,6BAA6B,CAAC;AAGtE,OAAO,EAAE,aAAa,EAAE,MAAM,4BAA4B,CAAC;AAC3D,OAAO,EAAE,oBAAoB,EAAE,MAAM,qBAAqB,CAAC;AAG3D,eAAO,MAAM,SAAS;;CAErB,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AACA,cAAc,UAAU,CAAC;AAGzB,OAAO,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AAGtD,OAAO,EACH,gBAAgB,EAChB,SAAS,EACT,WAAW,EACX,UAAU,EACV,qBAAqB,EACrB,gBAAgB,GACnB,MAAM,uBAAuB,CAAC;AAG/B,OAAO,EAAE,cAAc,EAAE,MAAM,qCAAqC,CAAC;AACrE,OAAO,EAAE,gBAAgB,EAAE,MAAM,uCAAuC,CAAC;AACzE,OAAO,EAAE,qBAAqB,EAAE,MAAM,4CAA4C,CAAC;AAGnF,OAAO,EAAE,cAAc,EAAE,MAAM,kCAAkC,CAAC;AAGlE,OAAO,EACH,iBAAiB,EACjB,aAAa,EACb,iBAAiB,EACjB,mBAAmB,EACnB,wBAAwB,EACxB,iBAAiB,EACjB,mBAAmB,EACnB,qBAAqB,EACrB,0BAA0B,EAC1B,oBAAoB,EACpB,+BAA+B,EAC/B,uBAAuB,EACvB,kBAAkB,EAClB,wBAAwB,EACxB,gBAAgB,EAChB,gBAAgB,EAChB,gBAAgB,EAChB,WAAW,GACd,MAAM,qBAAqB,CAAC;AAG7B,OAAO,EAAE,kBAAkB,EAAE,WAAW,EAAE,MAAM,sBAAsB,CAAC;AAGvE,OAAO,EAAE,eAAe,EAAE,MAAM,4BAA4B,CAAC;AAG7D,YAAY,EAAE,kBAAkB,EAAE,MAAM,6BAA6B,CAAC;AACtE,OAAO,EAAE,qBAAqB,EAAE,MAAM,6BAA6B,CAAC;AAGpE,OAAO,EAAE,oBAAoB,EAAE,MAAM,qBAAqB,CAAC;AAG3D,eAAO,MAAM,SAAS;;CAErB,CAAC"}
package/dist/index.js CHANGED
@@ -14,61 +14,44 @@ var __exportStar = (this && this.__exportStar) || function(m, exports) {
14
14
  for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
15
15
  };
16
16
  Object.defineProperty(exports, "__esModule", { value: true });
17
- exports.residence = exports.__resetSDKForTesting = exports.resetEventBus = exports.isSDKInitialized = exports.firestoreToEvent = exports.eventToFirestore = exports.getFirebaseAdapter = exports.getUIEventHandler = exports.getFriendController = exports.getUserController = exports.initializeSDK = exports.EventProcessorSDK = exports.UIGroupTransactionEventHandler = exports.UIGroupEventHandler = exports.UIFriendEventHandler = exports.UITransactionEventHandler = exports.UIUserEventHandler = exports.UIEventHandler = exports.FriendController = exports.UserController = exports.isValidActivityLogEventType = exports.isValidGroupTransactionEventType = exports.isValidGroupEventType = exports.isValidTransactionEventType = exports.isValidFriendEventType = exports.isValidUserEventType = exports.VALID_ACTIVITY_LOG_EVENT_TYPES = exports.VALID_GROUP_TRANSACTION_EVENT_TYPES = exports.VALID_GROUP_EVENT_TYPES = exports.VALID_TRANSACTION_EVENT_TYPES = exports.VALID_FRIEND_EVENT_TYPES = exports.VALID_USER_EVENT_TYPES = exports.ActivityLogEventTypes = exports.GroupTransactionEventTypes = exports.GroupEventTypes = exports.TransactionEventTypes = exports.FriendEventTypes = exports.UserEventTypes = void 0;
17
+ exports.residence = exports.__resetSDKForTesting = exports.EventConverterFactory = exports.ModelChangeEmitter = exports.isSDKInitialized = exports.firestoreToEvent = exports.eventToFirestore = exports.getModelChangeObservable = exports.getFirebaseAdapter = exports.getActivityEventHandler = exports.getGroupTransactionEventHandler = exports.getGroupEventHandler = exports.getTransactionEventHandler = exports.getFriendEventHandler = exports.getUserEventHandler = exports.getUIEventHandler = exports.getTransactionController = exports.getFriendController = exports.getUserController = exports.initializeSDK = exports.EventProcessorSDK = exports.UIEventHandler = exports.TransactionController = exports.FriendController = exports.UserController = void 0;
18
18
  // Export all backend event definitions here
19
19
  __exportStar(require("./events"), exports);
20
- // Export domain-specific event interfaces, types, and validation
21
- var DomainEvents_1 = require("./common/DomainEvents");
22
- Object.defineProperty(exports, "UserEventTypes", { enumerable: true, get: function () { return DomainEvents_1.UserEventTypes; } });
23
- Object.defineProperty(exports, "FriendEventTypes", { enumerable: true, get: function () { return DomainEvents_1.FriendEventTypes; } });
24
- Object.defineProperty(exports, "TransactionEventTypes", { enumerable: true, get: function () { return DomainEvents_1.TransactionEventTypes; } });
25
- Object.defineProperty(exports, "GroupEventTypes", { enumerable: true, get: function () { return DomainEvents_1.GroupEventTypes; } });
26
- Object.defineProperty(exports, "GroupTransactionEventTypes", { enumerable: true, get: function () { return DomainEvents_1.GroupTransactionEventTypes; } });
27
- Object.defineProperty(exports, "ActivityLogEventTypes", { enumerable: true, get: function () { return DomainEvents_1.ActivityLogEventTypes; } });
28
- Object.defineProperty(exports, "VALID_USER_EVENT_TYPES", { enumerable: true, get: function () { return DomainEvents_1.VALID_USER_EVENT_TYPES; } });
29
- Object.defineProperty(exports, "VALID_FRIEND_EVENT_TYPES", { enumerable: true, get: function () { return DomainEvents_1.VALID_FRIEND_EVENT_TYPES; } });
30
- Object.defineProperty(exports, "VALID_TRANSACTION_EVENT_TYPES", { enumerable: true, get: function () { return DomainEvents_1.VALID_TRANSACTION_EVENT_TYPES; } });
31
- Object.defineProperty(exports, "VALID_GROUP_EVENT_TYPES", { enumerable: true, get: function () { return DomainEvents_1.VALID_GROUP_EVENT_TYPES; } });
32
- Object.defineProperty(exports, "VALID_GROUP_TRANSACTION_EVENT_TYPES", { enumerable: true, get: function () { return DomainEvents_1.VALID_GROUP_TRANSACTION_EVENT_TYPES; } });
33
- Object.defineProperty(exports, "VALID_ACTIVITY_LOG_EVENT_TYPES", { enumerable: true, get: function () { return DomainEvents_1.VALID_ACTIVITY_LOG_EVENT_TYPES; } });
34
- Object.defineProperty(exports, "isValidUserEventType", { enumerable: true, get: function () { return DomainEvents_1.isValidUserEventType; } });
35
- Object.defineProperty(exports, "isValidFriendEventType", { enumerable: true, get: function () { return DomainEvents_1.isValidFriendEventType; } });
36
- Object.defineProperty(exports, "isValidTransactionEventType", { enumerable: true, get: function () { return DomainEvents_1.isValidTransactionEventType; } });
37
- Object.defineProperty(exports, "isValidGroupEventType", { enumerable: true, get: function () { return DomainEvents_1.isValidGroupEventType; } });
38
- Object.defineProperty(exports, "isValidGroupTransactionEventType", { enumerable: true, get: function () { return DomainEvents_1.isValidGroupTransactionEventType; } });
39
- Object.defineProperty(exports, "isValidActivityLogEventType", { enumerable: true, get: function () { return DomainEvents_1.isValidActivityLogEventType; } });
40
20
  // Export controllers
41
21
  var UserController_1 = require("./client/controllers/UserController");
42
22
  Object.defineProperty(exports, "UserController", { enumerable: true, get: function () { return UserController_1.UserController; } });
43
23
  var FriendController_1 = require("./client/controllers/FriendController");
44
24
  Object.defineProperty(exports, "FriendController", { enumerable: true, get: function () { return FriendController_1.FriendController; } });
25
+ var TransactionController_1 = require("./client/controllers/TransactionController");
26
+ Object.defineProperty(exports, "TransactionController", { enumerable: true, get: function () { return TransactionController_1.TransactionController; } });
45
27
  // Export client handlers
46
28
  var UIEventHandler_1 = require("./client/handlers/UIEventHandler");
47
29
  Object.defineProperty(exports, "UIEventHandler", { enumerable: true, get: function () { return UIEventHandler_1.UIEventHandler; } });
48
- var UIUserEventHandler_1 = require("./client/handlers/UIUserEventHandler");
49
- Object.defineProperty(exports, "UIUserEventHandler", { enumerable: true, get: function () { return UIUserEventHandler_1.UIUserEventHandler; } });
50
- var UITransactionEventHandler_1 = require("./client/handlers/UITransactionEventHandler");
51
- Object.defineProperty(exports, "UITransactionEventHandler", { enumerable: true, get: function () { return UITransactionEventHandler_1.UITransactionEventHandler; } });
52
- var UIFriendEventHandler_1 = require("./client/handlers/UIFriendEventHandler");
53
- Object.defineProperty(exports, "UIFriendEventHandler", { enumerable: true, get: function () { return UIFriendEventHandler_1.UIFriendEventHandler; } });
54
- var UIGroupEventHandler_1 = require("./client/handlers/UIGroupEventHandler");
55
- Object.defineProperty(exports, "UIGroupEventHandler", { enumerable: true, get: function () { return UIGroupEventHandler_1.UIGroupEventHandler; } });
56
- var UIGroupTransactionEventHandler_1 = require("./client/handlers/UIGroupTransactionEventHandler");
57
- Object.defineProperty(exports, "UIGroupTransactionEventHandler", { enumerable: true, get: function () { return UIGroupTransactionEventHandler_1.UIGroupTransactionEventHandler; } });
58
30
  // Export SDK initialization
59
31
  var EventProcessorSDK_1 = require("./EventProcessorSDK");
60
32
  Object.defineProperty(exports, "EventProcessorSDK", { enumerable: true, get: function () { return EventProcessorSDK_1.EventProcessorSDK; } });
61
33
  Object.defineProperty(exports, "initializeSDK", { enumerable: true, get: function () { return EventProcessorSDK_1.initializeSDK; } });
62
34
  Object.defineProperty(exports, "getUserController", { enumerable: true, get: function () { return EventProcessorSDK_1.getUserController; } });
63
35
  Object.defineProperty(exports, "getFriendController", { enumerable: true, get: function () { return EventProcessorSDK_1.getFriendController; } });
36
+ Object.defineProperty(exports, "getTransactionController", { enumerable: true, get: function () { return EventProcessorSDK_1.getTransactionController; } });
64
37
  Object.defineProperty(exports, "getUIEventHandler", { enumerable: true, get: function () { return EventProcessorSDK_1.getUIEventHandler; } });
38
+ Object.defineProperty(exports, "getUserEventHandler", { enumerable: true, get: function () { return EventProcessorSDK_1.getUserEventHandler; } });
39
+ Object.defineProperty(exports, "getFriendEventHandler", { enumerable: true, get: function () { return EventProcessorSDK_1.getFriendEventHandler; } });
40
+ Object.defineProperty(exports, "getTransactionEventHandler", { enumerable: true, get: function () { return EventProcessorSDK_1.getTransactionEventHandler; } });
41
+ Object.defineProperty(exports, "getGroupEventHandler", { enumerable: true, get: function () { return EventProcessorSDK_1.getGroupEventHandler; } });
42
+ Object.defineProperty(exports, "getGroupTransactionEventHandler", { enumerable: true, get: function () { return EventProcessorSDK_1.getGroupTransactionEventHandler; } });
43
+ Object.defineProperty(exports, "getActivityEventHandler", { enumerable: true, get: function () { return EventProcessorSDK_1.getActivityEventHandler; } });
65
44
  Object.defineProperty(exports, "getFirebaseAdapter", { enumerable: true, get: function () { return EventProcessorSDK_1.getFirebaseAdapter; } });
45
+ Object.defineProperty(exports, "getModelChangeObservable", { enumerable: true, get: function () { return EventProcessorSDK_1.getModelChangeObservable; } });
66
46
  Object.defineProperty(exports, "eventToFirestore", { enumerable: true, get: function () { return EventProcessorSDK_1.eventToFirestore; } });
67
47
  Object.defineProperty(exports, "firestoreToEvent", { enumerable: true, get: function () { return EventProcessorSDK_1.firestoreToEvent; } });
68
48
  Object.defineProperty(exports, "isSDKInitialized", { enumerable: true, get: function () { return EventProcessorSDK_1.isSDKInitialized; } });
49
+ // Export ModelChangeEmitter
50
+ var ModelChangeEmitter_1 = require("./ModelChangeEmitter");
51
+ Object.defineProperty(exports, "ModelChangeEmitter", { enumerable: true, get: function () { return ModelChangeEmitter_1.ModelChangeEmitter; } });
52
+ var eventConverter_1 = require("./converters/eventConverter");
53
+ Object.defineProperty(exports, "EventConverterFactory", { enumerable: true, get: function () { return eventConverter_1.EventConverterFactory; } });
69
54
  // Export singleton utilities for testing
70
- var EventBusSingleton_1 = require("./common/EventBusSingleton");
71
- Object.defineProperty(exports, "resetEventBus", { enumerable: true, get: function () { return EventBusSingleton_1.resetEventBus; } });
72
55
  var EventProcessorSDK_2 = require("./EventProcessorSDK");
73
56
  Object.defineProperty(exports, "__resetSDKForTesting", { enumerable: true, get: function () { return EventProcessorSDK_2.__resetSDKForTesting; } });
74
57
  // Export environment context
@@ -1,5 +1,5 @@
1
1
  import { ActivityLogEvent } from "../common/DomainEvents";
2
- export declare abstract class ActivityLogEventStore {
3
- abstract addEvent(event: ActivityLogEvent): Promise<void>;
2
+ export interface ActivityLogEventStore {
3
+ addEvent(event: ActivityLogEvent): Promise<void>;
4
4
  }
5
5
  //# sourceMappingURL=ActivityLogEventStore.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"ActivityLogEventStore.d.ts","sourceRoot":"","sources":["../../src/store/ActivityLogEventStore.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAE,MAAM,wBAAwB,CAAC;AAE1D,8BAAsB,qBAAqB;IACvC,QAAQ,CAAC,QAAQ,CAAC,KAAK,EAAE,gBAAgB,GAAG,OAAO,CAAC,IAAI,CAAC;CAC5D"}
1
+ {"version":3,"file":"ActivityLogEventStore.d.ts","sourceRoot":"","sources":["../../src/store/ActivityLogEventStore.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,6 +1,2 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.ActivityLogEventStore = void 0;
4
- class ActivityLogEventStore {
5
- }
6
- exports.ActivityLogEventStore = ActivityLogEventStore;
@@ -1,8 +1,8 @@
1
1
  import { ActivityLogModel } from "..";
2
2
  import { ModelStore } from "./ModelStore";
3
- export declare abstract class ActivityLogModelStore extends ModelStore {
4
- abstract getByStreamId(streamId: string): Promise<ActivityLogModel | undefined>;
5
- abstract getByStreamIdWhereDeletedIsFalse(streamId: string): Promise<ActivityLogModel | undefined>;
6
- abstract save(model: ActivityLogModel): Promise<void>;
3
+ export interface ActivityLogModelStore extends ModelStore {
4
+ getByStreamId(streamId: string): Promise<ActivityLogModel | undefined>;
5
+ getByStreamIdWhereDeletedIsFalse(streamId: string): Promise<ActivityLogModel | undefined>;
6
+ save(model: ActivityLogModel): Promise<void>;
7
7
  }
8
8
  //# sourceMappingURL=ActivityLogModelStore.d.ts.map