@zeeshan60/event-processor 1.0.87 → 1.0.89

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 (128) hide show
  1. package/dist/ActivityLogEvents.d.ts +17 -19
  2. package/dist/ActivityLogEvents.d.ts.map +1 -1
  3. package/dist/ActivityLogEvents.js +13 -19
  4. package/dist/ActivityLogEvents.js.map +1 -1
  5. package/dist/CategoryEvents.d.ts.map +1 -1
  6. package/dist/CategoryEvents.js +9 -7
  7. package/dist/CategoryEvents.js.map +1 -1
  8. package/dist/EventProcessorSDK.d.ts.map +1 -1
  9. package/dist/EventProcessorSDK.js +2 -2
  10. package/dist/EventProcessorSDK.js.map +1 -1
  11. package/dist/ExpenseAccountEvents.d.ts.map +1 -1
  12. package/dist/ExpenseAccountEvents.js +15 -11
  13. package/dist/ExpenseAccountEvents.js.map +1 -1
  14. package/dist/ExpenseEventHandler.d.ts.map +1 -1
  15. package/dist/ExpenseEventHandler.js +12 -3
  16. package/dist/ExpenseEventHandler.js.map +1 -1
  17. package/dist/ExpenseEvents.d.ts.map +1 -1
  18. package/dist/ExpenseEvents.js +24 -25
  19. package/dist/ExpenseEvents.js.map +1 -1
  20. package/dist/FriendEvents.d.ts.map +1 -1
  21. package/dist/FriendEvents.js +15 -11
  22. package/dist/FriendEvents.js.map +1 -1
  23. package/dist/GroupEvents.d.ts.map +1 -1
  24. package/dist/GroupEvents.js +30 -41
  25. package/dist/GroupEvents.js.map +1 -1
  26. package/dist/GroupTransactionEvents.d.ts.map +1 -1
  27. package/dist/GroupTransactionEvents.js +24 -25
  28. package/dist/GroupTransactionEvents.js.map +1 -1
  29. package/dist/NotificationEvents.d.ts +17 -4
  30. package/dist/NotificationEvents.d.ts.map +1 -1
  31. package/dist/NotificationEvents.js +12 -3
  32. package/dist/NotificationEvents.js.map +1 -1
  33. package/dist/TagEventHandler.d.ts.map +1 -1
  34. package/dist/TagEventHandler.js +9 -5
  35. package/dist/TagEventHandler.js.map +1 -1
  36. package/dist/TagEvents.d.ts +2 -8
  37. package/dist/TagEvents.d.ts.map +1 -1
  38. package/dist/TagEvents.js +11 -15
  39. package/dist/TagEvents.js.map +1 -1
  40. package/dist/TransactionEventHandler.d.ts +2 -2
  41. package/dist/TransactionEventHandler.d.ts.map +1 -1
  42. package/dist/TransactionEventHandler.js +18 -17
  43. package/dist/TransactionEventHandler.js.map +1 -1
  44. package/dist/TransactionEvents.d.ts.map +1 -1
  45. package/dist/TransactionEvents.js +24 -25
  46. package/dist/TransactionEvents.js.map +1 -1
  47. package/dist/UserEventHandler.d.ts +1 -4
  48. package/dist/UserEventHandler.d.ts.map +1 -1
  49. package/dist/UserEventHandler.js +1 -28
  50. package/dist/UserEventHandler.js.map +1 -1
  51. package/dist/UserEvents.d.ts.map +1 -1
  52. package/dist/UserEvents.js +18 -13
  53. package/dist/UserEvents.js.map +1 -1
  54. package/dist/__tests__/test-helpers/IMActivityLogModelStore.d.ts +0 -1
  55. package/dist/__tests__/test-helpers/IMActivityLogModelStore.d.ts.map +1 -1
  56. package/dist/__tests__/test-helpers/IMActivityLogModelStore.js +0 -9
  57. package/dist/__tests__/test-helpers/IMActivityLogModelStore.js.map +1 -1
  58. package/dist/__tests__/test-helpers/IMTagModelStore.d.ts +0 -1
  59. package/dist/__tests__/test-helpers/IMTagModelStore.d.ts.map +1 -1
  60. package/dist/__tests__/test-helpers/IMTagModelStore.js +0 -10
  61. package/dist/__tests__/test-helpers/IMTagModelStore.js.map +1 -1
  62. package/dist/client/controllers/ActivityController.js +1 -1
  63. package/dist/client/controllers/ActivityController.js.map +1 -1
  64. package/dist/client/controllers/CategoryController.d.ts +1 -0
  65. package/dist/client/controllers/CategoryController.d.ts.map +1 -1
  66. package/dist/client/controllers/CategoryController.js +29 -0
  67. package/dist/client/controllers/CategoryController.js.map +1 -1
  68. package/dist/client/controllers/ExpenseController.d.ts +11 -1
  69. package/dist/client/controllers/ExpenseController.d.ts.map +1 -1
  70. package/dist/client/controllers/ExpenseController.js +250 -5
  71. package/dist/client/controllers/ExpenseController.js.map +1 -1
  72. package/dist/client/controllers/GroupTransactionController.d.ts +3 -0
  73. package/dist/client/controllers/GroupTransactionController.d.ts.map +1 -1
  74. package/dist/client/controllers/GroupTransactionController.js +52 -2
  75. package/dist/client/controllers/GroupTransactionController.js.map +1 -1
  76. package/dist/client/controllers/NotificationController.d.ts +1 -0
  77. package/dist/client/controllers/NotificationController.d.ts.map +1 -1
  78. package/dist/client/controllers/NotificationController.js +8 -0
  79. package/dist/client/controllers/NotificationController.js.map +1 -1
  80. package/dist/client/controllers/TagController.d.ts +3 -3
  81. package/dist/client/controllers/TagController.d.ts.map +1 -1
  82. package/dist/client/controllers/TagController.js +18 -30
  83. package/dist/client/controllers/TagController.js.map +1 -1
  84. package/dist/client/controllers/TransactionController.d.ts +5 -0
  85. package/dist/client/controllers/TransactionController.d.ts.map +1 -1
  86. package/dist/client/controllers/TransactionController.js +70 -4
  87. package/dist/client/controllers/TransactionController.js.map +1 -1
  88. package/dist/client/controllers/UserController.d.ts +0 -1
  89. package/dist/client/controllers/UserController.d.ts.map +1 -1
  90. package/dist/client/controllers/UserController.js +0 -41
  91. package/dist/client/controllers/UserController.js.map +1 -1
  92. package/dist/client/handlers/UIEventHandler.d.ts.map +1 -1
  93. package/dist/client/handlers/UIEventHandler.js +0 -12
  94. package/dist/client/handlers/UIEventHandler.js.map +1 -1
  95. package/dist/contracts/NotificationPublisher.d.ts +5 -2
  96. package/dist/contracts/NotificationPublisher.d.ts.map +1 -1
  97. package/dist/contracts/activityLogs/index.d.ts +3 -3
  98. package/dist/contracts/activityLogs/index.d.ts.map +1 -1
  99. package/dist/contracts/expenses/index.d.ts +19 -2
  100. package/dist/contracts/expenses/index.d.ts.map +1 -1
  101. package/dist/contracts/expenses/index.js.map +1 -1
  102. package/dist/contracts/tags/index.d.ts +7 -4
  103. package/dist/contracts/tags/index.d.ts.map +1 -1
  104. package/dist/contracts/tags/index.js +23 -0
  105. package/dist/contracts/tags/index.js.map +1 -1
  106. package/dist/contracts/transactions/index.d.ts +5 -0
  107. package/dist/contracts/transactions/index.d.ts.map +1 -1
  108. package/dist/contracts/transactions/index.js +1 -0
  109. package/dist/contracts/transactions/index.js.map +1 -1
  110. package/dist/index.d.ts +4 -2
  111. package/dist/index.d.ts.map +1 -1
  112. package/dist/index.js +6 -2
  113. package/dist/index.js.map +1 -1
  114. package/dist/store/ModelStore.d.ts +0 -5
  115. package/dist/store/ModelStore.d.ts.map +1 -1
  116. package/dist/store/NotificationModelStore.d.ts +1 -0
  117. package/dist/store/NotificationModelStore.d.ts.map +1 -1
  118. package/dist/store/TagModelStore.d.ts +0 -1
  119. package/dist/store/TagModelStore.d.ts.map +1 -1
  120. package/dist/utils/TestDataUtil.d.ts +9 -0
  121. package/dist/utils/TestDataUtil.d.ts.map +1 -1
  122. package/dist/utils/TestDataUtil.js +46 -0
  123. package/dist/utils/TestDataUtil.js.map +1 -1
  124. package/dist/utils/TransactionMigrationUtil.d.ts.map +1 -1
  125. package/dist/utils/TransactionMigrationUtil.js +0 -42
  126. package/dist/utils/TransactionMigrationUtil.js.map +1 -1
  127. package/dist/utils/searchUtil.js +1 -1
  128. package/package.json +1 -1
@@ -3,6 +3,8 @@ Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.ExpenseController = void 0;
4
4
  const ExpenseEvents_1 = require("../../ExpenseEvents");
5
5
  const expenses_1 = require("../../contracts/expenses");
6
+ const tags_1 = require("../../contracts/tags");
7
+ const TagEvents_1 = require("../../TagEvents");
6
8
  const EventProcessorSDK_1 = require("../../EventProcessorSDK");
7
9
  const uuid_1 = require("uuid");
8
10
  const BalanceUtil_1 = require("../../utils/BalanceUtil");
@@ -30,12 +32,70 @@ class ExpenseController {
30
32
  get currencyStore() {
31
33
  return EventProcessorSDK_1.EventProcessorSDK.getInstance().getStoreConfig().currencyStore;
32
34
  }
35
+ get tagModelStore() {
36
+ return EventProcessorSDK_1.EventProcessorSDK.getInstance().getStoreConfig().tagModelStore;
37
+ }
38
+ get tagEventHandler() {
39
+ return EventProcessorSDK_1.EventProcessorSDK.getInstance().getTagEventHandler();
40
+ }
33
41
  get balanceUtil() {
34
42
  return new BalanceUtil_1.BalanceUtil(this.userModelStore, this.currencyStore);
35
43
  }
36
44
  get userNameUtil() {
37
45
  return new UserNameUtil_1.UserNameUtil(this.friendModelStore);
38
46
  }
47
+ async buildTagColorMap(userId) {
48
+ const tags = await this.tagModelStore.findAllByUserIdAndDeletedIsFalse(userId);
49
+ const tagColorMap = new Map();
50
+ for (const tag of tags) {
51
+ tagColorMap.set(tag.name.toLowerCase(), tag.color);
52
+ }
53
+ return tagColorMap;
54
+ }
55
+ resolveTagsWithColors(tagNames, tagColorMap) {
56
+ if (!tagNames || tagNames.length === 0) {
57
+ return undefined;
58
+ }
59
+ return tagNames.map((name) => ({
60
+ name,
61
+ color: tagColorMap.get(name.toLowerCase()) ?? tags_1.DEFAULT_TAG_COLOR,
62
+ }));
63
+ }
64
+ async ensureTagsExist(userId, tagNames) {
65
+ if (!tagNames || tagNames.length === 0) {
66
+ return;
67
+ }
68
+ const existingTags = await this.tagModelStore.findAllByUserIdAndDeletedIsFalse(userId);
69
+ const existingTagNames = new Set(existingTags.map((t) => t.name.toLowerCase()));
70
+ const usedColors = new Set(existingTags.map((t) => t.color.toUpperCase()));
71
+ const missingTagNames = tagNames.filter((name) => !existingTagNames.has(name.toLowerCase()));
72
+ if (missingTagNames.length === 0) {
73
+ return;
74
+ }
75
+ const availableColors = tags_1.TAG_COLORS.filter((color) => !usedColors.has(color.toUpperCase()));
76
+ for (const tagName of missingTagNames) {
77
+ const color = availableColors.length > 0
78
+ ? availableColors.shift()
79
+ : tags_1.TAG_COLORS[Math.floor(Math.random() * tags_1.TAG_COLORS.length)];
80
+ usedColors.add(color.toUpperCase());
81
+ const event = new TagEvents_1.TagCreated({
82
+ eventId: (0, uuid_1.v4)(),
83
+ userId,
84
+ name: tagName.trim(),
85
+ color,
86
+ createdAt: Date.now(),
87
+ createdBy: userId,
88
+ streamId: (0, uuid_1.v4)(),
89
+ version: 1,
90
+ systemGenerated: false,
91
+ });
92
+ await this.tagEventHandler.handleEvent(event);
93
+ console.log("[ExpenseController] Auto-created tag", {
94
+ tagName,
95
+ color,
96
+ });
97
+ }
98
+ }
39
99
  async createExpense(userId, request) {
40
100
  const account = await this.expenseAccountModelStore.findByUserIdAndAccountIdAndDeletedIsFalse(userId, request.accountId);
41
101
  if (!account) {
@@ -45,6 +105,7 @@ class ExpenseController {
45
105
  const streamId = (0, uuid_1.v4)();
46
106
  const createdAt = Date.now();
47
107
  const transactionDate = new Date(request.transactionDate).getTime();
108
+ await this.ensureTagsExist(userId, request.tags);
48
109
  const event = new ExpenseEvents_1.ExpenseCreated({
49
110
  eventId: (0, uuid_1.v4)(),
50
111
  userId,
@@ -86,6 +147,7 @@ class ExpenseController {
86
147
  }
87
148
  const createdAt = Date.now();
88
149
  const transactionDate = new Date(request.transactionDate).getTime();
150
+ await this.ensureTagsExist(userId, request.tags);
89
151
  const event = new ExpenseEvents_1.ExpenseUpdated({
90
152
  eventId: (0, uuid_1.v4)(),
91
153
  userId,
@@ -141,7 +203,8 @@ class ExpenseController {
141
203
  const toCurrency = user?.currency ?? "USD";
142
204
  const currencyRates = (await this.currencyStore.getCurrencyRates())?.rates ?? {};
143
205
  const userNameMap = await this.userNameUtil.buildUserNameMap(userId);
144
- const response = this.toExpenseResponse(expenseModel, userId, toCurrency, currencyRates, userNameMap);
206
+ const tagColorMap = await this.buildTagColorMap(userId);
207
+ const response = this.toExpenseResponse(expenseModel, userId, toCurrency, currencyRates, userNameMap, tagColorMap);
145
208
  console.log("[ExpenseController.getExpense] Returning expense", {
146
209
  requestParams: { userId, expenseId },
147
210
  response,
@@ -164,7 +227,8 @@ class ExpenseController {
164
227
  const toCurrency = user?.currency ?? "USD";
165
228
  const currencyRates = (await this.currencyStore.getCurrencyRates())?.rates ?? {};
166
229
  const userNameMap = await this.userNameUtil.buildUserNameMap(userId);
167
- const sortedExpenses = (0, sortingUtils_1.sortByTransactionDateAndCreatedAt)(userExpenses).map((e) => this.toExpenseResponse(e, userId, toCurrency, currencyRates, userNameMap));
230
+ const tagColorMap = await this.buildTagColorMap(userId);
231
+ const sortedExpenses = (0, sortingUtils_1.sortByTransactionDateAndCreatedAt)(userExpenses).map((e) => this.toExpenseResponse(e, userId, toCurrency, currencyRates, userNameMap, tagColorMap));
168
232
  const typeFilteredExpenses = transactionType
169
233
  ? sortedExpenses.filter((e) => e.transactionType === transactionType)
170
234
  : sortedExpenses;
@@ -188,7 +252,7 @@ class ExpenseController {
188
252
  const balance = await this.calculateBalance(expensesForBalance, userId);
189
253
  // Calculate totals from ALL expenses (unfiltered by transactionType or search)
190
254
  // to show overall account totals regardless of active filters
191
- const expensesForTotals = expensesForBalance.map((e) => this.toExpenseResponse(e, userId, toCurrency, currencyRates, userNameMap));
255
+ const expensesForTotals = expensesForBalance.map((e) => this.toExpenseResponse(e, userId, toCurrency, currencyRates, userNameMap, tagColorMap));
192
256
  const totals = this.calculateTotals(expensesForTotals, toCurrency);
193
257
  const response = {
194
258
  perMonth,
@@ -209,6 +273,66 @@ class ExpenseController {
209
273
  });
210
274
  return response;
211
275
  }
276
+ async getExpensesByAccountMonthAndDay(userId, accountId, timeZone, month, search, sortByAmountAscending, transactionType) {
277
+ if (!timeZone || timeZone.trim() === "") {
278
+ throw new Error("Invalid timezone");
279
+ }
280
+ try {
281
+ new Date().toLocaleString("en-US", { timeZone });
282
+ }
283
+ catch (error) {
284
+ throw new Error("Invalid timezone");
285
+ }
286
+ const expenses = await this.modelStore.findAllByAccountIdAndDeletedIsFalse(accountId);
287
+ const userExpenses = expenses.filter((e) => e.userId === userId);
288
+ const user = await this.userModelStore.getByStreamIdWhereDeletedIsFalse(userId);
289
+ const toCurrency = user?.currency ?? "USD";
290
+ const currencyRates = (await this.currencyStore.getCurrencyRates())?.rates ?? {};
291
+ const userNameMap = await this.userNameUtil.buildUserNameMap(userId);
292
+ const tagColorMap = await this.buildTagColorMap(userId);
293
+ const sortedExpenses = (0, sortingUtils_1.sortByTransactionDateAndCreatedAt)(userExpenses).map((e) => this.toExpenseResponse(e, userId, toCurrency, currencyRates, userNameMap, tagColorMap));
294
+ const typeFilteredExpenses = transactionType
295
+ ? sortedExpenses.filter((e) => e.transactionType === transactionType)
296
+ : sortedExpenses;
297
+ const filteredExpenses = (0, searchUtil_1.fuzzySearch)({
298
+ items: typeFilteredExpenses,
299
+ keys: ["title", "amount.amount"],
300
+ search: search ?? "",
301
+ });
302
+ let groupedByMonthAndDay = this.groupExpensesByMonthAndDay(filteredExpenses, timeZone, toCurrency);
303
+ let expensesForBalance = userExpenses;
304
+ if (month) {
305
+ groupedByMonthAndDay = groupedByMonthAndDay.filter((group) => group.date === month);
306
+ expensesForBalance = userExpenses.filter((expense) => {
307
+ const monthStart = this.startOfMonth(new Date(expense.transactionDate).toISOString(), timeZone);
308
+ return monthStart === month;
309
+ });
310
+ }
311
+ const perMonth = sortByAmountAscending !== undefined
312
+ ? this.sortMonthByDayTransactionsByAmount(groupedByMonthAndDay, sortByAmountAscending)
313
+ : groupedByMonthAndDay;
314
+ const balance = await this.calculateBalance(expensesForBalance, userId);
315
+ const expensesForTotals = expensesForBalance.map((e) => this.toExpenseResponse(e, userId, toCurrency, currencyRates, userNameMap, tagColorMap));
316
+ const totals = this.calculateTotals(expensesForTotals, toCurrency);
317
+ const response = {
318
+ perMonth,
319
+ balance,
320
+ totals,
321
+ };
322
+ console.log("[ExpenseController.getExpensesByAccountMonthAndDay] Returning expenses by account, month and day", {
323
+ requestParams: {
324
+ userId,
325
+ accountId,
326
+ timeZone,
327
+ month,
328
+ search,
329
+ sortByAmountAscending,
330
+ transactionType,
331
+ },
332
+ response,
333
+ });
334
+ return response;
335
+ }
212
336
  async calculateBalance(expenses, userId) {
213
337
  if (expenses.length === 0) {
214
338
  return {
@@ -295,6 +419,127 @@ class ExpenseController {
295
419
  });
296
420
  return new Date(`${year}-${month}-01T00:00:00.000Z`).toISOString();
297
421
  }
422
+ startOfDay(dateString, timeZone) {
423
+ const date = new Date(dateString);
424
+ const year = date.toLocaleString("en-US", {
425
+ year: "numeric",
426
+ timeZone,
427
+ });
428
+ const month = date.toLocaleString("en-US", {
429
+ month: "2-digit",
430
+ timeZone,
431
+ });
432
+ const day = date.toLocaleString("en-US", {
433
+ day: "2-digit",
434
+ timeZone,
435
+ });
436
+ return new Date(`${year}-${month}-${day}T00:00:00.000Z`).toISOString();
437
+ }
438
+ groupExpensesByMonthAndDay(expenses, timeZone, toCurrency) {
439
+ const groupedByMonth = new Map();
440
+ for (const expense of expenses) {
441
+ const monthKey = this.startOfMonth(expense.date, timeZone);
442
+ const dayKey = this.startOfDay(expense.date, timeZone);
443
+ if (!groupedByMonth.has(monthKey)) {
444
+ groupedByMonth.set(monthKey, new Map());
445
+ }
446
+ const monthMap = groupedByMonth.get(monthKey);
447
+ if (!monthMap.has(dayKey)) {
448
+ monthMap.set(dayKey, []);
449
+ }
450
+ monthMap.get(dayKey).push(expense);
451
+ }
452
+ return Array.from(groupedByMonth.entries())
453
+ .sort((a, b) => new Date(b[0]).getTime() - new Date(a[0]).getTime())
454
+ .map(([monthDate, dayMap]) => {
455
+ const days = Array.from(dayMap.entries())
456
+ .sort((a, b) => new Date(b[0]).getTime() - new Date(a[0]).getTime())
457
+ .map(([dayDate, dayTransactions]) => ({
458
+ date: dayDate,
459
+ transactions: dayTransactions,
460
+ totals: this.calculateTotals(dayTransactions, toCurrency),
461
+ dailyBalance: this.calculateDailyBalance(dayTransactions, toCurrency),
462
+ }));
463
+ const allTransactions = days.flatMap((d) => d.transactions);
464
+ return {
465
+ date: monthDate,
466
+ days,
467
+ totals: this.calculateTotals(allTransactions, toCurrency),
468
+ };
469
+ });
470
+ }
471
+ calculateDailyBalance(expenses, toCurrency) {
472
+ if (expenses.length === 0) {
473
+ return {
474
+ main: undefined,
475
+ other: [],
476
+ };
477
+ }
478
+ const currencyBalances = new Map();
479
+ for (const expense of expenses) {
480
+ const originalCurrency = expense.amount.currency;
481
+ const existing = currencyBalances.get(originalCurrency) || {
482
+ original: 0,
483
+ converted: 0,
484
+ };
485
+ const signedOriginal = expense.transactionType === expenses_1.TransactionType.INCOME
486
+ ? expense.amount.amount
487
+ : -expense.amount.amount;
488
+ const signedConverted = expense.transactionType === expenses_1.TransactionType.INCOME
489
+ ? expense.defaultCurrencyAmount.amount
490
+ : -expense.defaultCurrencyAmount.amount;
491
+ currencyBalances.set(originalCurrency, {
492
+ original: existing.original + signedOriginal,
493
+ converted: existing.converted + signedConverted,
494
+ });
495
+ }
496
+ const nonZeroBalances = new Map();
497
+ for (const [currency, balance] of currencyBalances.entries()) {
498
+ if (balance.original !== 0) {
499
+ nonZeroBalances.set(currency, balance);
500
+ }
501
+ }
502
+ if (nonZeroBalances.size === 0) {
503
+ return {
504
+ main: undefined,
505
+ other: [],
506
+ };
507
+ }
508
+ const other = [];
509
+ let totalConvertedAmount = 0;
510
+ for (const [currency, balance] of nonZeroBalances.entries()) {
511
+ other.push({
512
+ amount: {
513
+ amount: Math.abs(balance.original),
514
+ currency: currency,
515
+ isOwed: balance.original > 0,
516
+ },
517
+ convertedAmount: {
518
+ amount: Math.abs(balance.converted),
519
+ currency: toCurrency,
520
+ isOwed: balance.converted > 0,
521
+ },
522
+ });
523
+ totalConvertedAmount += balance.converted;
524
+ }
525
+ return {
526
+ main: {
527
+ amount: Math.abs(totalConvertedAmount),
528
+ currency: toCurrency,
529
+ isOwed: totalConvertedAmount > 0,
530
+ },
531
+ other,
532
+ };
533
+ }
534
+ sortMonthByDayTransactionsByAmount(months, ascending) {
535
+ return months.map((month) => ({
536
+ ...month,
537
+ days: month.days.map((day) => ({
538
+ ...day,
539
+ transactions: sortUtil_1.SortUtil.sortByAmount(day.transactions, ascending),
540
+ })),
541
+ }));
542
+ }
298
543
  calculateTotals(expenses, currency) {
299
544
  let totalIncome = 0;
300
545
  let totalExpense = 0;
@@ -314,7 +559,7 @@ class ExpenseController {
314
559
  balance: totalIncome - totalExpense,
315
560
  };
316
561
  }
317
- toExpenseResponse(expenseModel, userId, toCurrency, rates, userNameMap) {
562
+ toExpenseResponse(expenseModel, userId, toCurrency, rates, userNameMap, tagColorMap) {
318
563
  const convertedAmount = this.balanceUtil.convertAmount(expenseModel.amount, expenseModel.currency, toCurrency, rates);
319
564
  const amount = {
320
565
  amount: expenseModel.amount,
@@ -356,7 +601,7 @@ class ExpenseController {
356
601
  description: expenseModel.description,
357
602
  category: expenseModel.category,
358
603
  paymentMethod: expenseModel.paymentMethod,
359
- tags: expenseModel.tags,
604
+ tags: this.resolveTagsWithColors(expenseModel.tags, tagColorMap),
360
605
  transactionType: expenseModel.transactionType,
361
606
  date: new Date(expenseModel.transactionDate).toISOString(),
362
607
  createdAt: new Date(expenseModel.createdAt).toISOString(),
@@ -1 +1 @@
1
- {"version":3,"file":"ExpenseController.js","sourceRoot":"","sources":["../../../src/client/controllers/ExpenseController.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ExpenseController.js","sourceRoot":"","sources":["../../../src/client/controllers/ExpenseController.ts"],"names":[],"mappings":"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"}
@@ -6,8 +6,11 @@ export declare class GroupTransactionController {
6
6
  private get userModelStore();
7
7
  private get currencyStore();
8
8
  private get friendModelStore();
9
+ private get tagModelStore();
10
+ private get tagEventHandler();
9
11
  private get balanceUtil();
10
12
  private get userNameUtil();
13
+ private ensureTagsExist;
11
14
  createSettleUpWithMember(userId: string, groupId: string, request: GroupTransactionSettleUpRequest): Promise<string>;
12
15
  createYouPaidSplitEqually(userId: string, groupId: string, request: GroupTransactionYouPaidSplitEquallyRequest): Promise<string>;
13
16
  createTheyPaidSplitEqually(userId: string, groupId: string, request: GroupTransactionTheyPaidSplitEquallyRequest): Promise<string>;
@@ -1 +1 @@
1
- {"version":3,"file":"GroupTransactionController.d.ts","sourceRoot":"","sources":["../../../src/client/controllers/GroupTransactionController.ts"],"names":[],"mappings":"AASA,OAAO,EACL,wBAAwB,EACxB,gCAAgC,EAChC,+BAA+B,EAC/B,sCAAsC,EAEtC,2CAA2C,EAC3C,0CAA0C,EAC3C,MAAM,wBAAwB,CAAC;AAYhC,qBAAa,0BAA0B;IACrC,OAAO,KAAK,0BAA0B,GAGrC;IAED,OAAO,KAAK,4BAA4B,GAEvC;IAED,OAAO,KAAK,eAAe,GAE1B;IAED,OAAO,KAAK,cAAc,GAEzB;IAED,OAAO,KAAK,aAAa,GAExB;IAED,OAAO,KAAK,gBAAgB,GAE3B;IAED,OAAO,KAAK,WAAW,GAEtB;IAED,OAAO,KAAK,YAAY,GAEvB;IAEK,wBAAwB,CAC5B,MAAM,EAAE,MAAM,EACd,OAAO,EAAE,MAAM,EACf,OAAO,EAAE,+BAA+B,GACvC,OAAO,CAAC,MAAM,CAAC;IAaZ,yBAAyB,CAC7B,MAAM,EAAE,MAAM,EACd,OAAO,EAAE,MAAM,EACf,OAAO,EAAE,0CAA0C,GAClD,OAAO,CAAC,MAAM,CAAC;IAaZ,0BAA0B,CAC9B,MAAM,EAAE,MAAM,EACd,OAAO,EAAE,MAAM,EACf,OAAO,EAAE,2CAA2C,GACnD,OAAO,CAAC,MAAM,CAAC;IAaZ,qBAAqB,CACzB,MAAM,EAAE,MAAM,EACd,OAAO,EAAE,MAAM,EACf,OAAO,EAAE,sCAAsC,GAC9C,OAAO,CAAC,MAAM,CAAC;IAaZ,yBAAyB,CAC7B,MAAM,EAAE,MAAM,EACd,OAAO,EAAE,MAAM,EACf,OAAO,EAAE,0CAA0C,GAClD,OAAO,CAAC,IAAI,CAAC;IAuBV,0BAA0B,CAC9B,MAAM,EAAE,MAAM,EACd,OAAO,EAAE,MAAM,EACf,OAAO,EAAE,2CAA2C,GACnD,OAAO,CAAC,IAAI,CAAC;IAuBV,qBAAqB,CACzB,MAAM,EAAE,MAAM,EACd,OAAO,EAAE,MAAM,EACf,OAAO,EAAE,sCAAsC,GAC9C,OAAO,CAAC,IAAI,CAAC;IAuBV,wBAAwB,CAC5B,MAAM,EAAE,MAAM,EACd,OAAO,EAAE,MAAM,EACf,OAAO,EAAE,+BAA+B,GACvC,OAAO,CAAC,IAAI,CAAC;IAkBV,iBAAiB,CACrB,MAAM,EAAE,MAAM,EACd,OAAO,EAAE,MAAM,EACf,aAAa,EAAE,MAAM,GACpB,OAAO,CAAC,IAAI,CAAC;IAyBV,cAAc,CAClB,MAAM,EAAE,MAAM,EACd,aAAa,EAAE,MAAM,GACpB,OAAO,CAAC,wBAAwB,GAAG,SAAS,CAAC;IAsC1C,sBAAsB,CAC1B,MAAM,EAAE,MAAM,EACd,OAAO,EAAE,MAAM,EACf,QAAQ,EAAE,MAAM,EAChB,MAAM,CAAC,EAAE,MAAM,EACf,qBAAqB,CAAC,EAAE,OAAO,GAC9B,OAAO,CAAC,gCAAgC,CAAC;IA2F5C,OAAO,CAAC,kBAAkB;YASZ,uBAAuB;IAsBrC,OAAO,CAAC,wBAAwB;IAuBhC,OAAO,CAAC,YAAY;CAMrB"}
1
+ {"version":3,"file":"GroupTransactionController.d.ts","sourceRoot":"","sources":["../../../src/client/controllers/GroupTransactionController.ts"],"names":[],"mappings":"AAWA,OAAO,EACL,wBAAwB,EACxB,gCAAgC,EAChC,+BAA+B,EAC/B,sCAAsC,EAEtC,2CAA2C,EAC3C,0CAA0C,EAC3C,MAAM,wBAAwB,CAAC;AAYhC,qBAAa,0BAA0B;IACrC,OAAO,KAAK,0BAA0B,GAGrC;IAED,OAAO,KAAK,4BAA4B,GAEvC;IAED,OAAO,KAAK,eAAe,GAE1B;IAED,OAAO,KAAK,cAAc,GAEzB;IAED,OAAO,KAAK,aAAa,GAExB;IAED,OAAO,KAAK,gBAAgB,GAE3B;IAED,OAAO,KAAK,aAAa,GAExB;IAED,OAAO,KAAK,eAAe,GAE1B;IAED,OAAO,KAAK,WAAW,GAEtB;IAED,OAAO,KAAK,YAAY,GAEvB;YAEa,eAAe;IAwDvB,wBAAwB,CAC5B,MAAM,EAAE,MAAM,EACd,OAAO,EAAE,MAAM,EACf,OAAO,EAAE,+BAA+B,GACvC,OAAO,CAAC,MAAM,CAAC;IAcZ,yBAAyB,CAC7B,MAAM,EAAE,MAAM,EACd,OAAO,EAAE,MAAM,EACf,OAAO,EAAE,0CAA0C,GAClD,OAAO,CAAC,MAAM,CAAC;IAcZ,0BAA0B,CAC9B,MAAM,EAAE,MAAM,EACd,OAAO,EAAE,MAAM,EACf,OAAO,EAAE,2CAA2C,GACnD,OAAO,CAAC,MAAM,CAAC;IAcZ,qBAAqB,CACzB,MAAM,EAAE,MAAM,EACd,OAAO,EAAE,MAAM,EACf,OAAO,EAAE,sCAAsC,GAC9C,OAAO,CAAC,MAAM,CAAC;IAcZ,yBAAyB,CAC7B,MAAM,EAAE,MAAM,EACd,OAAO,EAAE,MAAM,EACf,OAAO,EAAE,0CAA0C,GAClD,OAAO,CAAC,IAAI,CAAC;IAwBV,0BAA0B,CAC9B,MAAM,EAAE,MAAM,EACd,OAAO,EAAE,MAAM,EACf,OAAO,EAAE,2CAA2C,GACnD,OAAO,CAAC,IAAI,CAAC;IAwBV,qBAAqB,CACzB,MAAM,EAAE,MAAM,EACd,OAAO,EAAE,MAAM,EACf,OAAO,EAAE,sCAAsC,GAC9C,OAAO,CAAC,IAAI,CAAC;IAwBV,wBAAwB,CAC5B,MAAM,EAAE,MAAM,EACd,OAAO,EAAE,MAAM,EACf,OAAO,EAAE,+BAA+B,GACvC,OAAO,CAAC,IAAI,CAAC;IAmBV,iBAAiB,CACrB,MAAM,EAAE,MAAM,EACd,OAAO,EAAE,MAAM,EACf,aAAa,EAAE,MAAM,GACpB,OAAO,CAAC,IAAI,CAAC;IAyBV,cAAc,CAClB,MAAM,EAAE,MAAM,EACd,aAAa,EAAE,MAAM,GACpB,OAAO,CAAC,wBAAwB,GAAG,SAAS,CAAC;IAsC1C,sBAAsB,CAC1B,MAAM,EAAE,MAAM,EACd,OAAO,EAAE,MAAM,EACf,QAAQ,EAAE,MAAM,EAChB,MAAM,CAAC,EAAE,MAAM,EACf,qBAAqB,CAAC,EAAE,OAAO,GAC9B,OAAO,CAAC,gCAAgC,CAAC;IA0F5C,OAAO,CAAC,kBAAkB;YASZ,uBAAuB;IAsBrC,OAAO,CAAC,wBAAwB;IAuBhC,OAAO,CAAC,YAAY;CAMrB"}
@@ -3,6 +3,8 @@ Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.GroupTransactionController = void 0;
4
4
  const GroupTransactionEvents_1 = require("../../GroupTransactionEvents");
5
5
  const TransactionEvents_1 = require("../../TransactionEvents");
6
+ const TagEvents_1 = require("../../TagEvents");
7
+ const tags_1 = require("../../contracts/tags");
6
8
  const EventProcessorSDK_1 = require("../../EventProcessorSDK");
7
9
  const uuid_1 = require("uuid");
8
10
  const BalanceUtil_1 = require("../../utils/BalanceUtil");
@@ -30,13 +32,55 @@ class GroupTransactionController {
30
32
  get friendModelStore() {
31
33
  return EventProcessorSDK_1.EventProcessorSDK.getInstance().getStoreConfig().friendModelStore;
32
34
  }
35
+ get tagModelStore() {
36
+ return EventProcessorSDK_1.EventProcessorSDK.getInstance().getStoreConfig().tagModelStore;
37
+ }
38
+ get tagEventHandler() {
39
+ return EventProcessorSDK_1.EventProcessorSDK.getInstance().getTagEventHandler();
40
+ }
33
41
  get balanceUtil() {
34
42
  return new BalanceUtil_1.BalanceUtil(this.userModelStore, this.currencyStore);
35
43
  }
36
44
  get userNameUtil() {
37
45
  return new UserNameUtil_1.UserNameUtil(this.friendModelStore);
38
46
  }
47
+ async ensureTagsExist(userId, tagNames) {
48
+ if (!tagNames || tagNames.length === 0) {
49
+ return;
50
+ }
51
+ const existingTags = await this.tagModelStore.findAllByUserIdAndDeletedIsFalse(userId);
52
+ const existingTagNames = new Set(existingTags.map((t) => t.name.toLowerCase()));
53
+ const usedColors = new Set(existingTags.map((t) => t.color.toUpperCase()));
54
+ const missingTagNames = tagNames.filter((name) => !existingTagNames.has(name.toLowerCase()));
55
+ if (missingTagNames.length === 0) {
56
+ return;
57
+ }
58
+ const availableColors = tags_1.TAG_COLORS.filter((color) => !usedColors.has(color.toUpperCase()));
59
+ for (const tagName of missingTagNames) {
60
+ const color = availableColors.length > 0
61
+ ? availableColors.shift()
62
+ : tags_1.TAG_COLORS[Math.floor(Math.random() * tags_1.TAG_COLORS.length)];
63
+ usedColors.add(color.toUpperCase());
64
+ const event = new TagEvents_1.TagCreated({
65
+ eventId: (0, uuid_1.v4)(),
66
+ userId,
67
+ name: tagName.trim(),
68
+ color,
69
+ createdAt: Date.now(),
70
+ createdBy: userId,
71
+ streamId: (0, uuid_1.v4)(),
72
+ version: 1,
73
+ systemGenerated: false,
74
+ });
75
+ await this.tagEventHandler.handleEvent(event);
76
+ console.log("[GroupTransactionController] Auto-created tag", {
77
+ tagName,
78
+ color,
79
+ });
80
+ }
81
+ }
39
82
  async createSettleUpWithMember(userId, groupId, request) {
83
+ await this.ensureTagsExist(userId, request.tags);
40
84
  const event = (0, GroupUtil_1.buildSettleUpEvent)(userId, groupId, request);
41
85
  await this.groupTransactionEventHandler.handleEvent(event);
42
86
  const transactionId = event.transactionId;
@@ -44,6 +88,7 @@ class GroupTransactionController {
44
88
  return transactionId;
45
89
  }
46
90
  async createYouPaidSplitEqually(userId, groupId, request) {
91
+ await this.ensureTagsExist(userId, request.tags);
47
92
  const event = (0, GroupUtil_1.buildYouPaidSplitEquallyEvent)(userId, groupId, request);
48
93
  await this.groupTransactionEventHandler.handleEvent(event);
49
94
  const transactionId = event.transactionId;
@@ -51,6 +96,7 @@ class GroupTransactionController {
51
96
  return transactionId;
52
97
  }
53
98
  async createTheyPaidSplitEqually(userId, groupId, request) {
99
+ await this.ensureTagsExist(userId, request.tags);
54
100
  const event = (0, GroupUtil_1.buildTheyPaidSplitEquallyEvent)(userId, groupId, request);
55
101
  await this.groupTransactionEventHandler.handleEvent(event);
56
102
  const transactionId = event.transactionId;
@@ -58,6 +104,7 @@ class GroupTransactionController {
58
104
  return transactionId;
59
105
  }
60
106
  async createSpecificAmounts(userId, groupId, request) {
107
+ await this.ensureTagsExist(userId, request.tags);
61
108
  const event = (0, GroupUtil_1.buildSpecificAmountsEvent)(userId, groupId, request);
62
109
  await this.groupTransactionEventHandler.handleEvent(event);
63
110
  const transactionId = event.transactionId;
@@ -68,6 +115,7 @@ class GroupTransactionController {
68
115
  if (!request.transactionId) {
69
116
  throw new Error("transactionId is required for update");
70
117
  }
118
+ await this.ensureTagsExist(userId, request.tags);
71
119
  const existingModel = await this.findExistingTransaction(userId, groupId, request.transactionId);
72
120
  const event = (0, GroupUtil_1.buildYouPaidSplitEquallyEvent)(userId, groupId, request, existingModel);
73
121
  await this.groupTransactionEventHandler.handleEvent(event);
@@ -77,6 +125,7 @@ class GroupTransactionController {
77
125
  if (!request.transactionId) {
78
126
  throw new Error("transactionId is required for update");
79
127
  }
128
+ await this.ensureTagsExist(userId, request.tags);
80
129
  const existingModel = await this.findExistingTransaction(userId, groupId, request.transactionId);
81
130
  const event = (0, GroupUtil_1.buildTheyPaidSplitEquallyEvent)(userId, groupId, request, existingModel);
82
131
  await this.groupTransactionEventHandler.handleEvent(event);
@@ -86,6 +135,7 @@ class GroupTransactionController {
86
135
  if (!request.transactionId) {
87
136
  throw new Error("transactionId is required for update");
88
137
  }
138
+ await this.ensureTagsExist(userId, request.tags);
89
139
  const existingModel = await this.findExistingTransaction(userId, groupId, request.transactionId);
90
140
  const event = (0, GroupUtil_1.buildSpecificAmountsEvent)(userId, groupId, request, existingModel);
91
141
  await this.groupTransactionEventHandler.handleEvent(event);
@@ -95,6 +145,7 @@ class GroupTransactionController {
95
145
  if (!request.transactionId) {
96
146
  throw new Error("transactionId is required for update");
97
147
  }
148
+ await this.ensureTagsExist(userId, request.tags);
98
149
  const existingModel = await this.findExistingTransaction(userId, groupId, request.transactionId);
99
150
  const event = (0, GroupUtil_1.buildSettleUpEvent)(userId, groupId, request, existingModel);
100
151
  await this.groupTransactionEventHandler.handleEvent(event);
@@ -145,8 +196,7 @@ class GroupTransactionController {
145
196
  memberNameMap.set(memberId, info.name);
146
197
  }
147
198
  const sortedTransactions = transactions
148
- .sort((a, b) => b.transactionDate - a.transactionDate ||
149
- b.createdAt - a.createdAt)
199
+ .sort((a, b) => b.transactionDate - a.transactionDate || b.createdAt - a.createdAt)
150
200
  .map((t) => (0, GroupUtil_1.toGroupTransactionResponse)(t, toCurrency, currencyRates, memberNameMap));
151
201
  const filteredTransactions = (0, searchUtil_1.fuzzySearch)({
152
202
  items: sortedTransactions,
@@ -1 +1 @@
1
- {"version":3,"file":"GroupTransactionController.js","sourceRoot":"","sources":["../../../src/client/controllers/GroupTransactionController.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"GroupTransactionController.js","sourceRoot":"","sources":["../../../src/client/controllers/GroupTransactionController.ts"],"names":[],"mappings":"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"}
@@ -5,5 +5,6 @@ export declare class NotificationController {
5
5
  getNotifications(userId: string): Promise<NotificationModel[]>;
6
6
  markNotificationAsRead(userId: string, notificationId: string): Promise<void>;
7
7
  markAllNotificationsAsRead(userId: string): Promise<void>;
8
+ getUnreadNotificationCount(userId: string): Promise<number>;
8
9
  }
9
10
  //# sourceMappingURL=NotificationController.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"NotificationController.d.ts","sourceRoot":"","sources":["../../../src/client/controllers/NotificationController.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,iBAAiB,EAAE,MAAM,0BAA0B,CAAC;AAI7D,qBAAa,sBAAsB;IACjC,OAAO,KAAK,UAAU,GAGrB;IAED,OAAO,KAAK,wBAAwB,GAEnC;IAEK,gBAAgB,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,iBAAiB,EAAE,CAAC;IAc9D,sBAAsB,CAC1B,MAAM,EAAE,MAAM,EACd,cAAc,EAAE,MAAM,GACrB,OAAO,CAAC,IAAI,CAAC;IAqCV,0BAA0B,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;CAQhE"}
1
+ {"version":3,"file":"NotificationController.d.ts","sourceRoot":"","sources":["../../../src/client/controllers/NotificationController.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,iBAAiB,EAAE,MAAM,0BAA0B,CAAC;AAI7D,qBAAa,sBAAsB;IACjC,OAAO,KAAK,UAAU,GAGrB;IAED,OAAO,KAAK,wBAAwB,GAEnC;IAEK,gBAAgB,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,iBAAiB,EAAE,CAAC;IAc9D,sBAAsB,CAC1B,MAAM,EAAE,MAAM,EACd,cAAc,EAAE,MAAM,GACrB,OAAO,CAAC,IAAI,CAAC;IAqCV,0BAA0B,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IASzD,0BAA0B,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;CAUlE"}