@zeeshan60/event-processor 1.0.156 → 1.0.158

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 (69) hide show
  1. package/dist/EventProcessorSDK.d.ts +1 -12
  2. package/dist/EventProcessorSDK.d.ts.map +1 -1
  3. package/dist/EventProcessorSDK.js +0 -25
  4. package/dist/EventProcessorSDK.js.map +1 -1
  5. package/dist/GroupTransactionEvents.d.ts +6 -0
  6. package/dist/GroupTransactionEvents.d.ts.map +1 -1
  7. package/dist/GroupTransactionEvents.js +4 -0
  8. package/dist/GroupTransactionEvents.js.map +1 -1
  9. package/dist/TransactionEvents.d.ts +6 -0
  10. package/dist/TransactionEvents.d.ts.map +1 -1
  11. package/dist/TransactionEvents.js +4 -0
  12. package/dist/TransactionEvents.js.map +1 -1
  13. package/dist/client/controllers/GroupTransactionController.d.ts +5 -0
  14. package/dist/client/controllers/GroupTransactionController.d.ts.map +1 -1
  15. package/dist/client/controllers/GroupTransactionController.js +16 -0
  16. package/dist/client/controllers/GroupTransactionController.js.map +1 -1
  17. package/dist/client/controllers/TransactionController.d.ts +5 -0
  18. package/dist/client/controllers/TransactionController.d.ts.map +1 -1
  19. package/dist/client/controllers/TransactionController.js +21 -0
  20. package/dist/client/controllers/TransactionController.js.map +1 -1
  21. package/dist/common/DomainEvents.d.ts +0 -2
  22. package/dist/common/DomainEvents.d.ts.map +1 -1
  23. package/dist/common/EventTypes.d.ts +0 -2
  24. package/dist/common/EventTypes.d.ts.map +1 -1
  25. package/dist/common/EventTypes.js +0 -3
  26. package/dist/common/EventTypes.js.map +1 -1
  27. package/dist/contracts/groups/index.d.ts +6 -0
  28. package/dist/contracts/groups/index.d.ts.map +1 -1
  29. package/dist/contracts/groups/index.js +4 -0
  30. package/dist/contracts/groups/index.js.map +1 -1
  31. package/dist/contracts/transactions/index.d.ts +6 -0
  32. package/dist/contracts/transactions/index.d.ts.map +1 -1
  33. package/dist/contracts/transactions/index.js +4 -0
  34. package/dist/contracts/transactions/index.js.map +1 -1
  35. package/dist/converters/eventConverter.d.ts.map +1 -1
  36. package/dist/converters/eventConverter.js +0 -7
  37. package/dist/converters/eventConverter.js.map +1 -1
  38. package/dist/events.d.ts +0 -4
  39. package/dist/events.d.ts.map +1 -1
  40. package/dist/events.js +1 -6
  41. package/dist/events.js.map +1 -1
  42. package/dist/index.d.ts +2 -3
  43. package/dist/index.d.ts.map +1 -1
  44. package/dist/index.js +2 -6
  45. package/dist/index.js.map +1 -1
  46. package/dist/utils/GroupUtil.d.ts.map +1 -1
  47. package/dist/utils/GroupUtil.js +3 -0
  48. package/dist/utils/GroupUtil.js.map +1 -1
  49. package/package.json +1 -1
  50. package/dist/ReminderEventHandler.d.ts +0 -38
  51. package/dist/ReminderEventHandler.d.ts.map +0 -1
  52. package/dist/ReminderEventHandler.js +0 -190
  53. package/dist/ReminderEventHandler.js.map +0 -1
  54. package/dist/ReminderEvents.d.ts +0 -50
  55. package/dist/ReminderEvents.d.ts.map +0 -1
  56. package/dist/ReminderEvents.js +0 -51
  57. package/dist/ReminderEvents.js.map +0 -1
  58. package/dist/client/controllers/ReminderController.d.ts +0 -10
  59. package/dist/client/controllers/ReminderController.d.ts.map +0 -1
  60. package/dist/client/controllers/ReminderController.js +0 -83
  61. package/dist/client/controllers/ReminderController.js.map +0 -1
  62. package/dist/store/ReminderEventStore.d.ts +0 -5
  63. package/dist/store/ReminderEventStore.d.ts.map +0 -1
  64. package/dist/store/ReminderEventStore.js +0 -3
  65. package/dist/store/ReminderEventStore.js.map +0 -1
  66. package/dist/store/ReminderModelStore.d.ts +0 -11
  67. package/dist/store/ReminderModelStore.d.ts.map +0 -1
  68. package/dist/store/ReminderModelStore.js +0 -5
  69. package/dist/store/ReminderModelStore.js.map +0 -1
@@ -1,190 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.ReminderEventHandler = void 0;
4
- const NotificationEvents_1 = require("./NotificationEvents");
5
- const EventTypes_1 = require("./common/EventTypes");
6
- const BaseEventHandler_1 = require("./BaseEventHandler");
7
- const BalanceUtil_1 = require("./utils/BalanceUtil");
8
- const uuid_1 = require("uuid");
9
- const contracts_1 = require("./contracts");
10
- class ReminderEventHandler extends BaseEventHandler_1.BaseEventHandler {
11
- constructor(modelStore, reminderEventStore, transactionModelStore, groupTransactionModelStore, friendModelStore, userModelStore, groupModelStore, currencyStore, notificationEventHandler, isClient, clientType, modelChangeEmitter, notificationPublisher, logger) {
12
- super(isClient, clientType, modelChangeEmitter, logger);
13
- this.modelStore = modelStore;
14
- this.reminderEventStore = reminderEventStore;
15
- this.transactionModelStore = transactionModelStore;
16
- this.groupTransactionModelStore = groupTransactionModelStore;
17
- this.friendModelStore = friendModelStore;
18
- this.userModelStore = userModelStore;
19
- this.groupModelStore = groupModelStore;
20
- this.currencyStore = currencyStore;
21
- this.notificationEventHandler = notificationEventHandler;
22
- this.notificationPublisher = notificationPublisher;
23
- }
24
- getModelStore() {
25
- return this.modelStore;
26
- }
27
- getEventStore() {
28
- return this.reminderEventStore;
29
- }
30
- async handleEvent(event, _context) {
31
- switch (event.eventType) {
32
- case EventTypes_1.EventType.SETTLE_UP_REMINDER_TRIGGERED:
33
- return await this.handleSettleUpReminderTriggered(event, _context);
34
- default:
35
- throw new Error(`Unknown reminder event type: ${event.eventType}`);
36
- }
37
- }
38
- async handleSettleUpReminderTriggered(event, context) {
39
- this.logger.log("[debug] handleSettleUpReminderTriggered START", {
40
- streamId: event.streamId,
41
- userId: event.userId,
42
- recipientUserId: event.recipientUserId,
43
- groupId: event.groupId,
44
- isClient: this.isClient,
45
- });
46
- const existingModel = await this.modelStore.getByStreamIdWhereDeletedIsFalse(event.streamId);
47
- if (this.shouldSkipSave(existingModel, event)) {
48
- this.logger.log("[debug] skipping save (already processed)");
49
- return existingModel;
50
- }
51
- const updatedModel = event.apply(existingModel);
52
- if (this.isNotAIClient()) {
53
- await this.modelStore.save(updatedModel);
54
- this.logger.log("[debug] model saved");
55
- }
56
- if (this.isClient) {
57
- await this.reminderEventStore.addEvent(event);
58
- this.modelChangeEmitter?.emit(event.eventMainType);
59
- this.logger.log("[debug] client path done, event stored");
60
- return updatedModel;
61
- }
62
- if (event.groupId) {
63
- this.logger.log("[debug] routing to handleGroupReminder");
64
- await this.handleGroupReminder(event, context);
65
- }
66
- else {
67
- this.logger.log("[debug] routing to handleFriendReminder");
68
- await this.handleFriendReminder(event, context);
69
- }
70
- return updatedModel;
71
- }
72
- async handleFriendReminder(event, context) {
73
- if (!this.notificationPublisher) {
74
- this.logger.log("[debug] handleFriendReminder: no notificationPublisher, returning");
75
- return;
76
- }
77
- const transactions = await this.transactionModelStore.findByUserIdAndRecipientUserIdWhereDeletedIsFalse(event.userId, event.recipientUserId);
78
- this.logger.log("[debug] handleFriendReminder: transactions found", {
79
- count: transactions.length,
80
- });
81
- if (transactions.length === 0)
82
- return;
83
- const balanceUtil = new BalanceUtil_1.BalanceUtil(this.userModelStore, this.currencyStore);
84
- const balance = await balanceUtil.calculateBalance(transactions, event.recipientUserId);
85
- this.logger.log("[debug] handleFriendReminder: balance calculated", {
86
- hasMain: !!balance.main,
87
- amount: balance.main?.amount,
88
- isOwed: balance.main?.isOwed,
89
- currency: balance.main?.currency,
90
- });
91
- if (!balance.main || balance.main.amount <= 0 || balance.main.isOwed)
92
- return;
93
- const senderUser = await this.userModelStore.getByStreamIdWhereDeletedIsFalse(event.userId);
94
- const senderName = senderUser?.displayName || "Someone";
95
- const formattedAmount = balance.main.amount.toFixed(2);
96
- const title = "Settle Up Reminder";
97
- const body = `${senderName} is reminding you to settle up ${formattedAmount} ${balance.main.currency}`;
98
- try {
99
- await this.notificationPublisher.sendNotificationToUser(event.recipientUserId, { title, body });
100
- await this.createNotificationEvent(event.recipientUserId, event.userId, title, body, event.streamId);
101
- }
102
- catch (error) {
103
- this.logger.error("[ReminderEventHandler] Failed to send friend reminder notification", {
104
- streamId: event.streamId,
105
- recipientUserId: event.recipientUserId,
106
- error: error instanceof Error ? error.message : String(error),
107
- });
108
- }
109
- }
110
- async handleGroupReminder(event, context) {
111
- if (!this.notificationPublisher || !event.groupId)
112
- return;
113
- const groupModel = await this.groupModelStore.findByUserIdAndGroupIdAndDeletedIsFalse(event.userId, event.groupId);
114
- if (!groupModel)
115
- return;
116
- const groupTransactions = await this.groupTransactionModelStore.findByUserIdAndGroupIdWhereDeletedIsFalse(event.userId, event.groupId);
117
- if (groupTransactions.length === 0)
118
- return;
119
- const memberBalances = new Map();
120
- for (const tx of groupTransactions) {
121
- for (const owe of tx.whoOweYou) {
122
- if (!memberBalances.has(owe.memberId)) {
123
- memberBalances.set(owe.memberId, new Map());
124
- }
125
- const currencyMap = memberBalances.get(owe.memberId);
126
- const existing = currencyMap.get(tx.currency) || 0;
127
- currencyMap.set(tx.currency, existing + owe.amount);
128
- }
129
- for (const owe of tx.whoYouOwe) {
130
- if (!memberBalances.has(owe.memberId)) {
131
- memberBalances.set(owe.memberId, new Map());
132
- }
133
- const currencyMap = memberBalances.get(owe.memberId);
134
- const existing = currencyMap.get(tx.currency) || 0;
135
- currencyMap.set(tx.currency, existing - owe.amount);
136
- }
137
- }
138
- const senderUser = await this.userModelStore.getByStreamIdWhereDeletedIsFalse(event.userId);
139
- const senderName = senderUser?.displayName || "Someone";
140
- const currencyRates = (await this.currencyStore.getCurrencyRates())?.rates ?? {};
141
- for (const [memberId, currencyMap] of memberBalances) {
142
- const memberUser = await this.userModelStore.getByStreamIdWhereDeletedIsFalse(memberId);
143
- const memberCurrency = memberUser?.currency ?? "USD";
144
- let totalOwed = 0;
145
- for (const [currency, balance] of currencyMap) {
146
- if (balance > 0) {
147
- totalOwed += (0, contracts_1.convertCurrency)(balance, currency, memberCurrency, currencyRates);
148
- }
149
- }
150
- if (totalOwed <= 0)
151
- continue;
152
- const formattedAmount = totalOwed.toFixed(2);
153
- const title = "Settle Up Reminder";
154
- const body = `${senderName} is reminding you to settle up ${formattedAmount} ${memberCurrency} in ${groupModel.name}`;
155
- try {
156
- await this.notificationPublisher.sendNotificationToUser(memberId, {
157
- title,
158
- body,
159
- });
160
- await this.createNotificationEvent(memberId, event.userId, title, body, event.streamId);
161
- }
162
- catch (error) {
163
- this.logger.error("[ReminderEventHandler] Failed to send group reminder notification", {
164
- streamId: event.streamId,
165
- memberId,
166
- error: error instanceof Error ? error.message : String(error),
167
- });
168
- }
169
- }
170
- }
171
- async createNotificationEvent(recipientUserId, createdBy, title, body, sourceId) {
172
- const notificationEvent = new NotificationEvents_1.NotificationCreated({
173
- eventId: (0, uuid_1.v4)(),
174
- userId: recipientUserId,
175
- streamId: (0, uuid_1.v4)(),
176
- version: 1,
177
- createdAt: Date.now(),
178
- createdBy,
179
- systemGenerated: true,
180
- title,
181
- body,
182
- sourceEventType: EventTypes_1.EventType.SETTLE_UP_REMINDER_TRIGGERED,
183
- sourceType: EventTypes_1.EventMainType.REMINDER,
184
- sourceId,
185
- });
186
- await this.notificationEventHandler.handleBackendEvent(notificationEvent);
187
- }
188
- }
189
- exports.ReminderEventHandler = ReminderEventHandler;
190
- //# sourceMappingURL=ReminderEventHandler.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"ReminderEventHandler.js","sourceRoot":"","sources":["../src/ReminderEventHandler.ts"],"names":[],"mappings":"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"}
@@ -1,50 +0,0 @@
1
- import { ReminderEvent } from "./common/DomainEvents";
2
- import { Model, ModelProps } from "./common/Model";
3
- export interface ReminderModelProps extends ModelProps {
4
- recipientUserId: string;
5
- groupId?: string;
6
- createdAt: number;
7
- createdBy: string;
8
- }
9
- export declare class ReminderModel implements ReminderModelProps {
10
- userId: string;
11
- streamId: string;
12
- version: number;
13
- deleted: boolean;
14
- updatedAt: number;
15
- synced: boolean;
16
- recipientUserId: string;
17
- groupId?: string;
18
- createdAt: number;
19
- createdBy: string;
20
- constructor(props: ReminderModelProps);
21
- }
22
- export interface SettleUpReminderTriggeredProps {
23
- eventId: string;
24
- userId: string;
25
- streamId: string;
26
- version: number;
27
- createdAt: number;
28
- createdBy: string;
29
- systemGenerated: boolean;
30
- skipNotify?: boolean;
31
- recipientUserId: string;
32
- groupId?: string;
33
- }
34
- export declare class SettleUpReminderTriggered implements ReminderEvent {
35
- readonly eventMainType: "reminder";
36
- readonly eventType: "SettleUpReminderTriggered";
37
- eventId: string;
38
- userId: string;
39
- streamId: string;
40
- version: number;
41
- createdAt: number;
42
- createdBy: string;
43
- systemGenerated: boolean;
44
- skipNotify?: boolean;
45
- recipientUserId: string;
46
- groupId?: string;
47
- constructor(props: SettleUpReminderTriggeredProps);
48
- apply(_existing?: Model): ReminderModel;
49
- }
50
- //# sourceMappingURL=ReminderEvents.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"ReminderEvents.d.ts","sourceRoot":"","sources":["../src/ReminderEvents.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,uBAAuB,CAAC;AACtD,OAAO,EAAE,KAAK,EAAE,UAAU,EAAE,MAAM,gBAAgB,CAAC;AAGnD,MAAM,WAAW,kBAAmB,SAAQ,UAAU;IACpD,eAAe,EAAE,MAAM,CAAC;IACxB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,EAAE,MAAM,CAAC;CACnB;AAED,qBAAa,aAAc,YAAW,kBAAkB;IACtD,MAAM,EAAE,MAAM,CAAC;IACf,QAAQ,EAAE,MAAM,CAAC;IACjB,OAAO,EAAE,MAAM,CAAC;IAChB,OAAO,EAAE,OAAO,CAAC;IACjB,SAAS,EAAE,MAAM,CAAC;IAClB,MAAM,EAAE,OAAO,CAAC;IAChB,eAAe,EAAE,MAAM,CAAC;IACxB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,EAAE,MAAM,CAAC;gBAEN,KAAK,EAAE,kBAAkB;CAYtC;AAED,MAAM,WAAW,8BAA8B;IAC7C,OAAO,EAAE,MAAM,CAAC;IAChB,MAAM,EAAE,MAAM,CAAC;IACf,QAAQ,EAAE,MAAM,CAAC;IACjB,OAAO,EAAE,MAAM,CAAC;IAChB,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,EAAE,MAAM,CAAC;IAClB,eAAe,EAAE,OAAO,CAAC;IACzB,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,eAAe,EAAE,MAAM,CAAC;IACxB,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB;AAED,qBAAa,yBAA0B,YAAW,aAAa;IAC7D,SAAgB,aAAa,aAA0B;IACvD,SAAgB,SAAS,8BAA0C;IAC5D,OAAO,EAAE,MAAM,CAAC;IAChB,MAAM,EAAE,MAAM,CAAC;IACf,QAAQ,EAAE,MAAM,CAAC;IACjB,OAAO,EAAE,MAAM,CAAC;IAChB,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,EAAE,MAAM,CAAC;IAClB,eAAe,EAAE,OAAO,CAAC;IACzB,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,eAAe,EAAE,MAAM,CAAC;IACxB,OAAO,CAAC,EAAE,MAAM,CAAC;gBAEZ,KAAK,EAAE,8BAA8B;IAajD,KAAK,CAAC,SAAS,CAAC,EAAE,KAAK,GAAG,aAAa;CAcxC"}
@@ -1,51 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.SettleUpReminderTriggered = exports.ReminderModel = void 0;
4
- const EventTypes_1 = require("./common/EventTypes");
5
- class ReminderModel {
6
- constructor(props) {
7
- this.userId = props.userId;
8
- this.streamId = props.streamId;
9
- this.version = props.version;
10
- this.deleted = props.deleted;
11
- this.updatedAt = props.updatedAt;
12
- this.synced = props.synced ?? false;
13
- this.recipientUserId = props.recipientUserId;
14
- this.groupId = props.groupId;
15
- this.createdAt = props.createdAt;
16
- this.createdBy = props.createdBy;
17
- }
18
- }
19
- exports.ReminderModel = ReminderModel;
20
- class SettleUpReminderTriggered {
21
- constructor(props) {
22
- this.eventMainType = EventTypes_1.EventMainType.REMINDER;
23
- this.eventType = EventTypes_1.EventType.SETTLE_UP_REMINDER_TRIGGERED;
24
- this.eventId = props.eventId;
25
- this.userId = props.userId;
26
- this.streamId = props.streamId;
27
- this.version = props.version;
28
- this.createdAt = props.createdAt;
29
- this.createdBy = props.createdBy;
30
- this.systemGenerated = props.systemGenerated;
31
- this.skipNotify = props.skipNotify;
32
- this.recipientUserId = props.recipientUserId;
33
- this.groupId = props.groupId;
34
- }
35
- apply(_existing) {
36
- return new ReminderModel({
37
- streamId: this.streamId,
38
- userId: this.userId,
39
- version: this.version,
40
- deleted: false,
41
- updatedAt: this.createdAt,
42
- synced: this.systemGenerated,
43
- recipientUserId: this.recipientUserId,
44
- groupId: this.groupId,
45
- createdAt: this.createdAt,
46
- createdBy: this.createdBy,
47
- });
48
- }
49
- }
50
- exports.SettleUpReminderTriggered = SettleUpReminderTriggered;
51
- //# sourceMappingURL=ReminderEvents.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"ReminderEvents.js","sourceRoot":"","sources":["../src/ReminderEvents.ts"],"names":[],"mappings":";;;AAEA,oDAA+D;AAS/D,MAAa,aAAa;IAYxB,YAAY,KAAyB;QACnC,IAAI,CAAC,MAAM,GAAG,KAAK,CAAC,MAAM,CAAC;QAC3B,IAAI,CAAC,QAAQ,GAAG,KAAK,CAAC,QAAQ,CAAC;QAC/B,IAAI,CAAC,OAAO,GAAG,KAAK,CAAC,OAAO,CAAC;QAC7B,IAAI,CAAC,OAAO,GAAG,KAAK,CAAC,OAAO,CAAC;QAC7B,IAAI,CAAC,SAAS,GAAG,KAAK,CAAC,SAAS,CAAC;QACjC,IAAI,CAAC,MAAM,GAAG,KAAK,CAAC,MAAM,IAAI,KAAK,CAAC;QACpC,IAAI,CAAC,eAAe,GAAG,KAAK,CAAC,eAAe,CAAC;QAC7C,IAAI,CAAC,OAAO,GAAG,KAAK,CAAC,OAAO,CAAC;QAC7B,IAAI,CAAC,SAAS,GAAG,KAAK,CAAC,SAAS,CAAC;QACjC,IAAI,CAAC,SAAS,GAAG,KAAK,CAAC,SAAS,CAAC;IACnC,CAAC;CACF;AAxBD,sCAwBC;AAeD,MAAa,yBAAyB;IAcpC,YAAY,KAAqC;QAbjC,kBAAa,GAAG,0BAAa,CAAC,QAAQ,CAAC;QACvC,cAAS,GAAG,sBAAS,CAAC,4BAA4B,CAAC;QAajE,IAAI,CAAC,OAAO,GAAG,KAAK,CAAC,OAAO,CAAC;QAC7B,IAAI,CAAC,MAAM,GAAG,KAAK,CAAC,MAAM,CAAC;QAC3B,IAAI,CAAC,QAAQ,GAAG,KAAK,CAAC,QAAQ,CAAC;QAC/B,IAAI,CAAC,OAAO,GAAG,KAAK,CAAC,OAAO,CAAC;QAC7B,IAAI,CAAC,SAAS,GAAG,KAAK,CAAC,SAAS,CAAC;QACjC,IAAI,CAAC,SAAS,GAAG,KAAK,CAAC,SAAS,CAAC;QACjC,IAAI,CAAC,eAAe,GAAG,KAAK,CAAC,eAAe,CAAC;QAC7C,IAAI,CAAC,UAAU,GAAG,KAAK,CAAC,UAAU,CAAC;QACnC,IAAI,CAAC,eAAe,GAAG,KAAK,CAAC,eAAe,CAAC;QAC7C,IAAI,CAAC,OAAO,GAAG,KAAK,CAAC,OAAO,CAAC;IAC/B,CAAC;IAED,KAAK,CAAC,SAAiB;QACrB,OAAO,IAAI,aAAa,CAAC;YACvB,QAAQ,EAAE,IAAI,CAAC,QAAQ;YACvB,MAAM,EAAE,IAAI,CAAC,MAAM;YACnB,OAAO,EAAE,IAAI,CAAC,OAAO;YACrB,OAAO,EAAE,KAAK;YACd,SAAS,EAAE,IAAI,CAAC,SAAS;YACzB,MAAM,EAAE,IAAI,CAAC,eAAe;YAC5B,eAAe,EAAE,IAAI,CAAC,eAAe;YACrC,OAAO,EAAE,IAAI,CAAC,OAAO;YACrB,SAAS,EAAE,IAAI,CAAC,SAAS;YACzB,SAAS,EAAE,IAAI,CAAC,SAAS;SAC1B,CAAC,CAAC;IACL,CAAC;CACF;AAzCD,8DAyCC"}
@@ -1,10 +0,0 @@
1
- import { EventProcessorSDK } from "../../EventProcessorSDK";
2
- export declare class ReminderController {
3
- private readonly sdk;
4
- constructor(sdk: EventProcessorSDK);
5
- private get reminderModelStore();
6
- private get friendModelStore();
7
- private get groupModelStore();
8
- sendSettleUpReminder(userId: string, recipientUserId: string, groupId?: string): Promise<string>;
9
- }
10
- //# sourceMappingURL=ReminderController.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"ReminderController.d.ts","sourceRoot":"","sources":["../../../src/client/controllers/ReminderController.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAAE,MAAM,yBAAyB,CAAC;AAI5D,qBAAa,kBAAkB;IAC7B,OAAO,CAAC,QAAQ,CAAC,GAAG,CAAoB;gBAE5B,GAAG,EAAE,iBAAiB;IAIlC,OAAO,KAAK,kBAAkB,GAE7B;IAED,OAAO,KAAK,gBAAgB,GAE3B;IAED,OAAO,KAAK,eAAe,GAE1B;IAEK,oBAAoB,CACxB,MAAM,EAAE,MAAM,EACd,eAAe,EAAE,MAAM,EACvB,OAAO,CAAC,EAAE,MAAM,GACf,OAAO,CAAC,MAAM,CAAC;CAyFnB"}
@@ -1,83 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.ReminderController = void 0;
4
- const ReminderEvents_1 = require("../../ReminderEvents");
5
- const uuid_1 = require("uuid");
6
- class ReminderController {
7
- constructor(sdk) {
8
- this.sdk = sdk;
9
- }
10
- get reminderModelStore() {
11
- return this.sdk.getStoreConfig().reminderModelStore;
12
- }
13
- get friendModelStore() {
14
- return this.sdk.getStoreConfig().friendModelStore;
15
- }
16
- get groupModelStore() {
17
- return this.sdk.getStoreConfig().groupModelStore;
18
- }
19
- async sendSettleUpReminder(userId, recipientUserId, groupId) {
20
- console.log("[debug] ReminderController.sendSettleUpReminder START", {
21
- userId,
22
- recipientUserId,
23
- groupId,
24
- });
25
- if (this.reminderModelStore) {
26
- console.log("[debug] checking dedup");
27
- const todayStart = new Date();
28
- todayStart.setHours(0, 0, 0, 0);
29
- const todayStartMs = todayStart.getTime();
30
- if (groupId) {
31
- const existing = await this.reminderModelStore.findByUserIdAndGroupIdAndCreatedAtAfter(userId, groupId, todayStartMs);
32
- if (existing) {
33
- throw new Error("You have already sent a settle up reminder for this group today.");
34
- }
35
- }
36
- else {
37
- const existing = await this.reminderModelStore.findByUserIdAndRecipientUserIdAndCreatedAtAfter(userId, recipientUserId, todayStartMs);
38
- if (existing) {
39
- throw new Error("You have already sent a settle up reminder to this person today.");
40
- }
41
- }
42
- console.log("[debug] dedup check passed");
43
- }
44
- else {
45
- console.log("[debug] no reminderModelStore, skipping dedup");
46
- }
47
- if (groupId) {
48
- console.log("[debug] validating group");
49
- const groupModel = await this.groupModelStore.findByUserIdAndGroupIdAndDeletedIsFalse(userId, groupId);
50
- if (!groupModel) {
51
- throw new Error("Group not found.");
52
- }
53
- }
54
- if (!groupId) {
55
- console.log("[debug] validating friend");
56
- const friendModel = await this.friendModelStore.findByUserIdAndFriendIdAndDeletedIsFalse(userId, recipientUserId);
57
- if (!friendModel) {
58
- throw new Error("Recipient is not in your friends list.");
59
- }
60
- }
61
- const streamId = (0, uuid_1.v4)();
62
- const event = new ReminderEvents_1.SettleUpReminderTriggered({
63
- eventId: (0, uuid_1.v4)(),
64
- userId,
65
- streamId,
66
- version: 1,
67
- createdAt: Date.now(),
68
- createdBy: userId,
69
- systemGenerated: false,
70
- recipientUserId,
71
- groupId,
72
- });
73
- console.log("[debug] calling handleEvent", {
74
- streamId,
75
- eventId: event.eventId,
76
- });
77
- await this.sdk.getReminderEventHandler().handleEvent(event);
78
- console.log("[debug] handleEvent completed");
79
- return streamId;
80
- }
81
- }
82
- exports.ReminderController = ReminderController;
83
- //# sourceMappingURL=ReminderController.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"ReminderController.js","sourceRoot":"","sources":["../../../src/client/controllers/ReminderController.ts"],"names":[],"mappings":"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"}
@@ -1,5 +0,0 @@
1
- import { ReminderEvent } from "../common/DomainEvents";
2
- import { EventStore } from "./EventStore";
3
- export interface ReminderEventStore extends EventStore<ReminderEvent> {
4
- }
5
- //# sourceMappingURL=ReminderEventStore.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"ReminderEventStore.d.ts","sourceRoot":"","sources":["../../src/store/ReminderEventStore.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,wBAAwB,CAAC;AACvD,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAE1C,MAAM,WAAW,kBAAmB,SAAQ,UAAU,CAAC,aAAa,CAAC;CAAG"}
@@ -1,3 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- //# sourceMappingURL=ReminderEventStore.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"ReminderEventStore.js","sourceRoot":"","sources":["../../src/store/ReminderEventStore.ts"],"names":[],"mappings":""}
@@ -1,11 +0,0 @@
1
- import { ReminderModel } from "../ReminderEvents";
2
- import { ModelStore } from "./ModelStore";
3
- export declare const REMINDER_MODEL_PATH = "models/reminders/reminderModels";
4
- export interface ReminderModelStore extends ModelStore {
5
- getByStreamId(streamId: string): Promise<ReminderModel | undefined>;
6
- getByStreamIdWhereDeletedIsFalse(streamId: string): Promise<ReminderModel | undefined>;
7
- save(model: ReminderModel): Promise<void>;
8
- findByUserIdAndRecipientUserIdAndCreatedAtAfter(userId: string, recipientUserId: string, after: number): Promise<ReminderModel | undefined>;
9
- findByUserIdAndGroupIdAndCreatedAtAfter(userId: string, groupId: string, after: number): Promise<ReminderModel | undefined>;
10
- }
11
- //# sourceMappingURL=ReminderModelStore.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"ReminderModelStore.d.ts","sourceRoot":"","sources":["../../src/store/ReminderModelStore.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,mBAAmB,CAAC;AAClD,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAE1C,eAAO,MAAM,mBAAmB,oCAAoC,CAAC;AAErE,MAAM,WAAW,kBAAmB,SAAQ,UAAU;IACpD,aAAa,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,aAAa,GAAG,SAAS,CAAC,CAAC;IAEpE,gCAAgC,CAC9B,QAAQ,EAAE,MAAM,GACf,OAAO,CAAC,aAAa,GAAG,SAAS,CAAC,CAAC;IAEtC,IAAI,CAAC,KAAK,EAAE,aAAa,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAE1C,+CAA+C,CAC7C,MAAM,EAAE,MAAM,EACd,eAAe,EAAE,MAAM,EACvB,KAAK,EAAE,MAAM,GACZ,OAAO,CAAC,aAAa,GAAG,SAAS,CAAC,CAAC;IAEtC,uCAAuC,CACrC,MAAM,EAAE,MAAM,EACd,OAAO,EAAE,MAAM,EACf,KAAK,EAAE,MAAM,GACZ,OAAO,CAAC,aAAa,GAAG,SAAS,CAAC,CAAC;CACvC"}
@@ -1,5 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.REMINDER_MODEL_PATH = void 0;
4
- exports.REMINDER_MODEL_PATH = "models/reminders/reminderModels";
5
- //# sourceMappingURL=ReminderModelStore.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"ReminderModelStore.js","sourceRoot":"","sources":["../../src/store/ReminderModelStore.ts"],"names":[],"mappings":";;;AAGa,QAAA,mBAAmB,GAAG,iCAAiC,CAAC"}