@zeeshan60/event-processor 1.0.193 → 1.0.195

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.
@@ -13,6 +13,6 @@ export declare class ActivityEventHandler extends BaseEventHandler<ActivityLogEv
13
13
  getEventStore(): ActivityLogEventStore;
14
14
  createActivityLog(event: Event, existingModel: Model | undefined, updatedModel: Model): Promise<void>;
15
15
  handleBackendEvent(event: ActivityLogEvent, context?: LoggingContext): Promise<any>;
16
- handleEvent(event: ActivityLogEvent, context?: LoggingContext): Promise<any>;
16
+ handleEvent(_event: ActivityLogEvent, _context?: LoggingContext): Promise<any>;
17
17
  }
18
18
  //# sourceMappingURL=ActivityEventHandler.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"ActivityEventHandler.d.ts","sourceRoot":"","sources":["../src/ActivityEventHandler.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,gBAAgB,EAChB,qBAAqB,EACrB,qBAAqB,EACrB,KAAK,EACL,KAAK,EACL,cAAc,EACf,MAAM,GAAG,CAAC;AACX,OAAO,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AACtD,OAAO,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AAC1D,OAAO,EAAE,UAAU,EAAE,MAAM,qBAAqB,CAAC;AACjD,OAAO,EAAE,cAAc,EAAE,MAAM,yBAAyB,CAAC;AAEzD,OAAO,EAAE,MAAM,EAAE,MAAM,oBAAoB,CAAC;AAE5C,qBAAa,oBAAqB,SAAQ,gBAAgB,CAAC,gBAAgB,CAAC;IAExE,OAAO,CAAC,qBAAqB;IAC7B,OAAO,CAAC,qBAAqB;IAC7B,OAAO,CAAC,cAAc;gBAFd,qBAAqB,EAAE,qBAAqB,EAC5C,qBAAqB,EAAE,qBAAqB,EAC5C,cAAc,EAAE,cAAc,EACtC,QAAQ,EAAE,OAAO,EACjB,UAAU,EAAE,UAAU,EACtB,kBAAkB,CAAC,EAAE,kBAAkB,EACvC,MAAM,CAAC,EAAE,MAAM;IAKV,aAAa,IAAI,qBAAqB;IAItC,aAAa,IAAI,qBAAqB;IAIvC,iBAAiB,CACrB,KAAK,EAAE,KAAK,EACZ,aAAa,EAAE,KAAK,GAAG,SAAS,EAChC,YAAY,EAAE,KAAK,GAClB,OAAO,CAAC,IAAI,CAAC;IAmCV,kBAAkB,CACtB,KAAK,EAAE,gBAAgB,EACvB,OAAO,CAAC,EAAE,cAAc,GACvB,OAAO,CAAC,GAAG,CAAC;IAIf,WAAW,CAAC,KAAK,EAAE,gBAAgB,EAAE,OAAO,CAAC,EAAE,cAAc,GAAG,OAAO,CAAC,GAAG,CAAC;CAO7E"}
1
+ {"version":3,"file":"ActivityEventHandler.d.ts","sourceRoot":"","sources":["../src/ActivityEventHandler.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,gBAAgB,EAChB,qBAAqB,EACrB,qBAAqB,EACrB,KAAK,EACL,KAAK,EACL,cAAc,EACf,MAAM,GAAG,CAAC;AACX,OAAO,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AACtD,OAAO,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AAC1D,OAAO,EAAE,UAAU,EAAE,MAAM,qBAAqB,CAAC;AACjD,OAAO,EAAE,cAAc,EAAE,MAAM,yBAAyB,CAAC;AAEzD,OAAO,EAAE,MAAM,EAAE,MAAM,oBAAoB,CAAC;AAE5C,qBAAa,oBAAqB,SAAQ,gBAAgB,CAAC,gBAAgB,CAAC;IAExE,OAAO,CAAC,qBAAqB;IAC7B,OAAO,CAAC,qBAAqB;IAC7B,OAAO,CAAC,cAAc;gBAFd,qBAAqB,EAAE,qBAAqB,EAC5C,qBAAqB,EAAE,qBAAqB,EAC5C,cAAc,EAAE,cAAc,EACtC,QAAQ,EAAE,OAAO,EACjB,UAAU,EAAE,UAAU,EACtB,kBAAkB,CAAC,EAAE,kBAAkB,EACvC,MAAM,CAAC,EAAE,MAAM;IAKV,aAAa,IAAI,qBAAqB;IAItC,aAAa,IAAI,qBAAqB;IAIvC,iBAAiB,CACrB,KAAK,EAAE,KAAK,EACZ,aAAa,EAAE,KAAK,GAAG,SAAS,EAChC,YAAY,EAAE,KAAK,GAClB,OAAO,CAAC,IAAI,CAAC;IAmCV,kBAAkB,CACtB,KAAK,EAAE,gBAAgB,EACvB,OAAO,CAAC,EAAE,cAAc,GACvB,OAAO,CAAC,GAAG,CAAC;IAIf,WAAW,CAAC,MAAM,EAAE,gBAAgB,EAAE,QAAQ,CAAC,EAAE,cAAc,GAAG,OAAO,CAAC,GAAG,CAAC;CAG/E"}
@@ -45,10 +45,8 @@ class ActivityEventHandler extends BaseEventHandler_1.BaseEventHandler {
45
45
  async handleBackendEvent(event, context) {
46
46
  return this.handleEvent(event, context);
47
47
  }
48
- handleEvent(event, context) {
49
- const error = new Error("Method not implemented. ActivityEventHandler only support createActivityLog for this");
50
- this.logger.error("Method not implemented.", event, error);
51
- throw error;
48
+ handleEvent(_event, _context) {
49
+ return Promise.resolve();
52
50
  }
53
51
  }
54
52
  exports.ActivityEventHandler = ActivityEventHandler;
@@ -1 +1 @@
1
- {"version":3,"file":"ActivityEventHandler.js","sourceRoot":"","sources":["../src/ActivityEventHandler.ts"],"names":[],"mappings":";;;AAQA,yDAAsD;AAItD,uDAAgE;AAGhE,MAAa,oBAAqB,SAAQ,mCAAkC;IAC1E,YACU,qBAA4C,EAC5C,qBAA4C,EAC5C,cAA8B,EACtC,QAAiB,EACjB,UAAsB,EACtB,kBAAuC,EACvC,MAAe;QAEf,KAAK,CAAC,QAAQ,EAAE,UAAU,EAAE,kBAAkB,EAAE,MAAM,CAAC,CAAC;QARhD,0BAAqB,GAArB,qBAAqB,CAAuB;QAC5C,0BAAqB,GAArB,qBAAqB,CAAuB;QAC5C,mBAAc,GAAd,cAAc,CAAgB;IAOxC,CAAC;IAEM,aAAa;QAClB,OAAO,IAAI,CAAC,qBAAqB,CAAC;IACpC,CAAC;IAEM,aAAa;QAClB,OAAO,IAAI,CAAC,qBAAqB,CAAC;IACpC,CAAC;IAED,KAAK,CAAC,iBAAiB,CACrB,KAAY,EACZ,aAAgC,EAChC,YAAmB;QAEnB,IAAI,KAAK,CAAC,UAAU,EAAE,CAAC;YACrB,OAAO;QACT,CAAC;QACD,IAAI,SAA6B,CAAC;QAClC,IAAI,KAAK,CAAC,SAAS,KAAK,YAAY,CAAC,MAAM,EAAE,CAAC;YAC5C,MAAM,SAAS,GAAG,MAAM,IAAI,CAAC,cAAc,CAAC,aAAa,CACvD,KAAK,CAAC,SAAS,CAChB,CAAC;YACF,IAAI,SAAS,EAAE,CAAC;gBACd,SAAS,GAAG,SAAS,CAAC,WAAW,CAAC;YACpC,CAAC;iBAAM,CAAC;gBACN,SAAS,GAAG,KAAK,CAAC,SAAS,CAAC;YAC9B,CAAC;QACH,CAAC;QAED,MAAM,gBAAgB,GAAG,IAAA,uCAAwB,EAC/C,KAAK,EACL,aAAa,EACb,SAAS,CACV,CAAC;QAEF,IAAI,CAAC,gBAAgB,EAAE,CAAC;YACtB,OAAO;QACT,CAAC;QAED,MAAM,IAAI,CAAC,qBAAqB,CAAC,QAAQ,CAAC,gBAAgB,CAAC,CAAC;QAC5D,IAAI,IAAI,CAAC,cAAc,CAAC,SAAS,EAAE,gBAAgB,CAAC,EAAE,CAAC;YACrD,OAAO;QACT,CAAC;QACD,MAAM,gBAAgB,GAAG,gBAAgB,CAAC,KAAK,EAAE,CAAC;QAClD,MAAM,IAAI,CAAC,qBAAqB,CAAC,IAAI,CAAC,gBAAgB,CAAC,CAAC;QACxD,IAAI,CAAC,kBAAkB,EAAE,IAAI,CAAC,gBAAgB,CAAC,aAAa,CAAC,CAAC;IAChE,CAAC;IAED,KAAK,CAAC,kBAAkB,CACtB,KAAuB,EACvB,OAAwB;QAExB,OAAO,IAAI,CAAC,WAAW,CAAC,KAAK,EAAE,OAAO,CAAC,CAAC;IAC1C,CAAC;IAED,WAAW,CAAC,KAAuB,EAAE,OAAwB;QAC3D,MAAM,KAAK,GAAG,IAAI,KAAK,CACrB,sFAAsF,CACvF,CAAC;QACF,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,yBAAyB,EAAE,KAAK,EAAE,KAAK,CAAC,CAAC;QAC3D,MAAM,KAAK,CAAC;IACd,CAAC;CACF;AA1ED,oDA0EC"}
1
+ {"version":3,"file":"ActivityEventHandler.js","sourceRoot":"","sources":["../src/ActivityEventHandler.ts"],"names":[],"mappings":";;;AAQA,yDAAsD;AAItD,uDAAgE;AAGhE,MAAa,oBAAqB,SAAQ,mCAAkC;IAC1E,YACU,qBAA4C,EAC5C,qBAA4C,EAC5C,cAA8B,EACtC,QAAiB,EACjB,UAAsB,EACtB,kBAAuC,EACvC,MAAe;QAEf,KAAK,CAAC,QAAQ,EAAE,UAAU,EAAE,kBAAkB,EAAE,MAAM,CAAC,CAAC;QARhD,0BAAqB,GAArB,qBAAqB,CAAuB;QAC5C,0BAAqB,GAArB,qBAAqB,CAAuB;QAC5C,mBAAc,GAAd,cAAc,CAAgB;IAOxC,CAAC;IAEM,aAAa;QAClB,OAAO,IAAI,CAAC,qBAAqB,CAAC;IACpC,CAAC;IAEM,aAAa;QAClB,OAAO,IAAI,CAAC,qBAAqB,CAAC;IACpC,CAAC;IAED,KAAK,CAAC,iBAAiB,CACrB,KAAY,EACZ,aAAgC,EAChC,YAAmB;QAEnB,IAAI,KAAK,CAAC,UAAU,EAAE,CAAC;YACrB,OAAO;QACT,CAAC;QACD,IAAI,SAA6B,CAAC;QAClC,IAAI,KAAK,CAAC,SAAS,KAAK,YAAY,CAAC,MAAM,EAAE,CAAC;YAC5C,MAAM,SAAS,GAAG,MAAM,IAAI,CAAC,cAAc,CAAC,aAAa,CACvD,KAAK,CAAC,SAAS,CAChB,CAAC;YACF,IAAI,SAAS,EAAE,CAAC;gBACd,SAAS,GAAG,SAAS,CAAC,WAAW,CAAC;YACpC,CAAC;iBAAM,CAAC;gBACN,SAAS,GAAG,KAAK,CAAC,SAAS,CAAC;YAC9B,CAAC;QACH,CAAC;QAED,MAAM,gBAAgB,GAAG,IAAA,uCAAwB,EAC/C,KAAK,EACL,aAAa,EACb,SAAS,CACV,CAAC;QAEF,IAAI,CAAC,gBAAgB,EAAE,CAAC;YACtB,OAAO;QACT,CAAC;QAED,MAAM,IAAI,CAAC,qBAAqB,CAAC,QAAQ,CAAC,gBAAgB,CAAC,CAAC;QAC5D,IAAI,IAAI,CAAC,cAAc,CAAC,SAAS,EAAE,gBAAgB,CAAC,EAAE,CAAC;YACrD,OAAO;QACT,CAAC;QACD,MAAM,gBAAgB,GAAG,gBAAgB,CAAC,KAAK,EAAE,CAAC;QAClD,MAAM,IAAI,CAAC,qBAAqB,CAAC,IAAI,CAAC,gBAAgB,CAAC,CAAC;QACxD,IAAI,CAAC,kBAAkB,EAAE,IAAI,CAAC,gBAAgB,CAAC,aAAa,CAAC,CAAC;IAChE,CAAC;IAED,KAAK,CAAC,kBAAkB,CACtB,KAAuB,EACvB,OAAwB;QAExB,OAAO,IAAI,CAAC,WAAW,CAAC,KAAK,EAAE,OAAO,CAAC,CAAC;IAC1C,CAAC;IAED,WAAW,CAAC,MAAwB,EAAE,QAAyB;QAC7D,OAAO,OAAO,CAAC,OAAO,EAAE,CAAC;IAC3B,CAAC;CACF;AAtED,oDAsEC"}
@@ -267,7 +267,7 @@ class ExpenseUpdated {
267
267
  }
268
268
  const existingExpense = existing;
269
269
  const actor = actorName ?? "You";
270
- const logMessage = `${actor} updated expense "${existingExpense.title}"`;
270
+ const logMessage = `${actor} updated expense "${this.title}"`;
271
271
  return {
272
272
  eventId: (0, uuid_1.v4)(),
273
273
  userId: existingExpense.userId,
@@ -1 +1 @@
1
- {"version":3,"file":"ExpenseEvents.js","sourceRoot":"","sources":["../src/ExpenseEvents.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ExpenseEvents.js","sourceRoot":"","sources":["../src/ExpenseEvents.ts"],"names":[],"mappings":"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"}
@@ -1,4 +1,4 @@
1
- import { AccountTransactionCounts, CategoryTotalRow, DailyTotalRow, ExpenseModel, ExpenseModelStore, ExpenseQueryFilters } from "../..";
1
+ import { AccountTotalRow, AccountTransactionCounts, CategoryTotalRow, DailyTotalRow, ExpenseModel, ExpenseModelStore, ExpenseQueryFilters } from "../..";
2
2
  export declare class IMExpenseModelStore implements ExpenseModelStore {
3
3
  private models;
4
4
  getByStreamId(streamId: string): Promise<ExpenseModel | undefined>;
@@ -14,12 +14,14 @@ export declare class IMExpenseModelStore implements ExpenseModelStore {
14
14
  saveAll(models: ExpenseModel[]): Promise<void>;
15
15
  getAll(): ExpenseModel[];
16
16
  getAllWhereDeletedIsFalse(): ExpenseModel[];
17
+ countExpenses(userId: string, filters: ExpenseQueryFilters): Promise<number>;
17
18
  queryExpenses(userId: string, filters: ExpenseQueryFilters): Promise<ExpenseModel[]>;
18
19
  getTransactionCountsByAccount(userId: string, recentSince: number): Promise<AccountTransactionCounts[]>;
19
20
  findByAccountIdUserIdAndDateRange(accountId: string, userId: string, dateFrom: number, dateTo: number): Promise<ExpenseModel[]>;
20
21
  getTopExpensesByAmount(accountId: string, userId: string, limit: number, dateFrom?: number, dateTo?: number): Promise<ExpenseModel[]>;
21
22
  getDailyTotals(accountId: string, userId: string, dateFrom: number, dateTo: number): Promise<DailyTotalRow[]>;
22
23
  getCategoryTotals(accountId: string, userId: string, dateFrom?: number, dateTo?: number): Promise<CategoryTotalRow[]>;
24
+ getAccountTotals(accountId: string, userId: string, dateFrom?: number, dateTo?: number, category?: string): Promise<AccountTotalRow[]>;
23
25
  clear(): void;
24
26
  }
25
27
  //# sourceMappingURL=IMExpenseModelStore.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"IMExpenseModelStore.d.ts","sourceRoot":"","sources":["../../../src/__tests__/test-helpers/IMExpenseModelStore.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,wBAAwB,EACxB,gBAAgB,EAChB,aAAa,EACb,YAAY,EACZ,iBAAiB,EACjB,mBAAmB,EAEpB,MAAM,OAAO,CAAC;AAEf,qBAAa,mBAAoB,YAAW,iBAAiB;IAC3D,OAAO,CAAC,MAAM,CAAwC;IAEhD,aAAa,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,YAAY,GAAG,SAAS,CAAC;IAIlE,gCAAgC,CACpC,QAAQ,EAAE,MAAM,GACf,OAAO,CAAC,YAAY,GAAG,SAAS,CAAC;IAQ9B,oBAAoB,IAAI,OAAO,CAAC,YAAY,GAAG,SAAS,CAAC;IAUzD,wBAAwB,CAC5B,MAAM,EAAE,MAAM,EACd,SAAS,EAAE,MAAM,GAChB,OAAO,CAAC,YAAY,GAAG,SAAS,CAAC;IAS9B,yCAAyC,CAC7C,MAAM,EAAE,MAAM,EACd,SAAS,EAAE,MAAM,GAChB,OAAO,CAAC,YAAY,GAAG,SAAS,CAAC;IAa9B,gCAAgC,CACpC,MAAM,EAAE,MAAM,GACb,OAAO,CAAC,YAAY,EAAE,CAAC;IAUpB,yCAAyC,CAC7C,MAAM,EAAE,MAAM,EACd,SAAS,EAAE,MAAM,GAChB,OAAO,CAAC,YAAY,EAAE,CAAC;IAcpB,mCAAmC,CACvC,SAAS,EAAE,MAAM,GAChB,OAAO,CAAC,YAAY,EAAE,CAAC;IAUpB,mCAAmC,CACvC,SAAS,EAAE,MAAM,GAChB,OAAO,CAAC,YAAY,EAAE,CAAC;IAUpB,IAAI,CAAC,KAAK,EAAE,YAAY,GAAG,OAAO,CAAC,IAAI,CAAC;IAIxC,OAAO,CAAC,MAAM,EAAE,YAAY,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC;IAMpD,MAAM,IAAI,YAAY,EAAE;IAIxB,yBAAyB,IAAI,YAAY,EAAE;IAIrC,aAAa,CACjB,MAAM,EAAE,MAAM,EACd,OAAO,EAAE,mBAAmB,GAC3B,OAAO,CAAC,YAAY,EAAE,CAAC;IAqEpB,6BAA6B,CACjC,MAAM,EAAE,MAAM,EACd,WAAW,EAAE,MAAM,GAClB,OAAO,CAAC,wBAAwB,EAAE,CAAC;IA0BhC,iCAAiC,CACrC,SAAS,EAAE,MAAM,EACjB,MAAM,EAAE,MAAM,EACd,QAAQ,EAAE,MAAM,EAChB,MAAM,EAAE,MAAM,GACb,OAAO,CAAC,YAAY,EAAE,CAAC;IAUpB,sBAAsB,CAC1B,SAAS,EAAE,MAAM,EACjB,MAAM,EAAE,MAAM,EACd,KAAK,EAAE,MAAM,EACb,QAAQ,CAAC,EAAE,MAAM,EACjB,MAAM,CAAC,EAAE,MAAM,GACd,OAAO,CAAC,YAAY,EAAE,CAAC;IAcpB,cAAc,CAClB,SAAS,EAAE,MAAM,EACjB,MAAM,EAAE,MAAM,EACd,QAAQ,EAAE,MAAM,EAChB,MAAM,EAAE,MAAM,GACb,OAAO,CAAC,aAAa,EAAE,CAAC;IAmCrB,iBAAiB,CACrB,SAAS,EAAE,MAAM,EACjB,MAAM,EAAE,MAAM,EACd,QAAQ,CAAC,EAAE,MAAM,EACjB,MAAM,CAAC,EAAE,MAAM,GACd,OAAO,CAAC,gBAAgB,EAAE,CAAC;IAqB9B,KAAK,IAAI,IAAI;CAGd"}
1
+ {"version":3,"file":"IMExpenseModelStore.d.ts","sourceRoot":"","sources":["../../../src/__tests__/test-helpers/IMExpenseModelStore.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,eAAe,EACf,wBAAwB,EACxB,gBAAgB,EAChB,aAAa,EACb,YAAY,EACZ,iBAAiB,EACjB,mBAAmB,EAEpB,MAAM,OAAO,CAAC;AAEf,qBAAa,mBAAoB,YAAW,iBAAiB;IAC3D,OAAO,CAAC,MAAM,CAAwC;IAEhD,aAAa,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,YAAY,GAAG,SAAS,CAAC;IAIlE,gCAAgC,CACpC,QAAQ,EAAE,MAAM,GACf,OAAO,CAAC,YAAY,GAAG,SAAS,CAAC;IAQ9B,oBAAoB,IAAI,OAAO,CAAC,YAAY,GAAG,SAAS,CAAC;IAUzD,wBAAwB,CAC5B,MAAM,EAAE,MAAM,EACd,SAAS,EAAE,MAAM,GAChB,OAAO,CAAC,YAAY,GAAG,SAAS,CAAC;IAS9B,yCAAyC,CAC7C,MAAM,EAAE,MAAM,EACd,SAAS,EAAE,MAAM,GAChB,OAAO,CAAC,YAAY,GAAG,SAAS,CAAC;IAa9B,gCAAgC,CACpC,MAAM,EAAE,MAAM,GACb,OAAO,CAAC,YAAY,EAAE,CAAC;IAUpB,yCAAyC,CAC7C,MAAM,EAAE,MAAM,EACd,SAAS,EAAE,MAAM,GAChB,OAAO,CAAC,YAAY,EAAE,CAAC;IAcpB,mCAAmC,CACvC,SAAS,EAAE,MAAM,GAChB,OAAO,CAAC,YAAY,EAAE,CAAC;IAUpB,mCAAmC,CACvC,SAAS,EAAE,MAAM,GAChB,OAAO,CAAC,YAAY,EAAE,CAAC;IAUpB,IAAI,CAAC,KAAK,EAAE,YAAY,GAAG,OAAO,CAAC,IAAI,CAAC;IAIxC,OAAO,CAAC,MAAM,EAAE,YAAY,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC;IAMpD,MAAM,IAAI,YAAY,EAAE;IAIxB,yBAAyB,IAAI,YAAY,EAAE;IAIrC,aAAa,CACjB,MAAM,EAAE,MAAM,EACd,OAAO,EAAE,mBAAmB,GAC3B,OAAO,CAAC,MAAM,CAAC;IAKZ,aAAa,CACjB,MAAM,EAAE,MAAM,EACd,OAAO,EAAE,mBAAmB,GAC3B,OAAO,CAAC,YAAY,EAAE,CAAC;IAqFpB,6BAA6B,CACjC,MAAM,EAAE,MAAM,EACd,WAAW,EAAE,MAAM,GAClB,OAAO,CAAC,wBAAwB,EAAE,CAAC;IA0BhC,iCAAiC,CACrC,SAAS,EAAE,MAAM,EACjB,MAAM,EAAE,MAAM,EACd,QAAQ,EAAE,MAAM,EAChB,MAAM,EAAE,MAAM,GACb,OAAO,CAAC,YAAY,EAAE,CAAC;IAUpB,sBAAsB,CAC1B,SAAS,EAAE,MAAM,EACjB,MAAM,EAAE,MAAM,EACd,KAAK,EAAE,MAAM,EACb,QAAQ,CAAC,EAAE,MAAM,EACjB,MAAM,CAAC,EAAE,MAAM,GACd,OAAO,CAAC,YAAY,EAAE,CAAC;IAcpB,cAAc,CAClB,SAAS,EAAE,MAAM,EACjB,MAAM,EAAE,MAAM,EACd,QAAQ,EAAE,MAAM,EAChB,MAAM,EAAE,MAAM,GACb,OAAO,CAAC,aAAa,EAAE,CAAC;IAmCrB,iBAAiB,CACrB,SAAS,EAAE,MAAM,EACjB,MAAM,EAAE,MAAM,EACd,QAAQ,CAAC,EAAE,MAAM,EACjB,MAAM,CAAC,EAAE,MAAM,GACd,OAAO,CAAC,gBAAgB,EAAE,CAAC;IAqBxB,gBAAgB,CACpB,SAAS,EAAE,MAAM,EACjB,MAAM,EAAE,MAAM,EACd,QAAQ,CAAC,EAAE,MAAM,EACjB,MAAM,CAAC,EAAE,MAAM,EACf,QAAQ,CAAC,EAAE,MAAM,GAChB,OAAO,CAAC,eAAe,EAAE,CAAC;IAkB7B,KAAK,IAAI,IAAI;CAGd"}
@@ -1,7 +1,6 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.IMExpenseModelStore = void 0;
4
- const __1 = require("../..");
5
4
  class IMExpenseModelStore {
6
5
  constructor() {
7
6
  this.models = new Map();
@@ -93,6 +92,10 @@ class IMExpenseModelStore {
93
92
  getAllWhereDeletedIsFalse() {
94
93
  return Array.from(this.models.values()).filter((model) => !model.deleted);
95
94
  }
95
+ async countExpenses(userId, filters) {
96
+ const results = await this.queryExpenses(userId, { ...filters, limit: undefined, offset: undefined });
97
+ return results.length;
98
+ }
96
99
  async queryExpenses(userId, filters) {
97
100
  let results = Array.from(this.models.values()).filter((m) => m.userId === userId && !m.deleted);
98
101
  if (filters.accountIds && filters.accountIds.length > 0) {
@@ -133,14 +136,26 @@ class IMExpenseModelStore {
133
136
  });
134
137
  }
135
138
  if (filters.searchText && filters.searchText.trim() !== "") {
136
- results = (0, __1.fuzzySearch)({
137
- items: results,
138
- keys: ["title", "description"],
139
- search: filters.searchText,
140
- threshold: 0.3,
141
- });
139
+ const searchLower = filters.searchText.trim().toLowerCase();
140
+ results = results.filter((e) => e.title.toLowerCase().includes(searchLower) ||
141
+ (e.description && e.description.toLowerCase().includes(searchLower)));
142
+ }
143
+ if (filters.recurringOnly) {
144
+ results = results.filter((e) => e.recurringId !== undefined);
145
+ }
146
+ if (filters.sortByAmount) {
147
+ const asc = filters.sortByAmount === "asc";
148
+ results.sort((a, b) => asc ? a.amount - b.amount : b.amount - a.amount);
149
+ }
150
+ else {
151
+ results.sort((a, b) => b.transactionDate - a.transactionDate);
152
+ }
153
+ if (filters.offset !== undefined && filters.offset > 0) {
154
+ results = results.slice(filters.offset);
155
+ }
156
+ if (filters.limit !== undefined) {
157
+ results = results.slice(0, filters.limit);
142
158
  }
143
- results.sort((a, b) => b.transactionDate - a.transactionDate);
144
159
  return results;
145
160
  }
146
161
  async getTransactionCountsByAccount(userId, recentSince) {
@@ -246,6 +261,25 @@ class IMExpenseModelStore {
246
261
  return { category, currency, transactionType: transactionType, totalAmount, count };
247
262
  });
248
263
  }
264
+ async getAccountTotals(accountId, userId, dateFrom, dateTo, category) {
265
+ const aggregation = new Map();
266
+ for (const model of this.models.values()) {
267
+ if (model.accountId !== accountId || model.userId !== userId || model.deleted)
268
+ continue;
269
+ if (dateFrom !== undefined && model.transactionDate < dateFrom)
270
+ continue;
271
+ if (dateTo !== undefined && model.transactionDate > dateTo)
272
+ continue;
273
+ if (category && (model.category || "Uncategorized") !== category)
274
+ continue;
275
+ const key = `${model.currency}|${model.transactionType}`;
276
+ aggregation.set(key, (aggregation.get(key) ?? 0) + model.amount);
277
+ }
278
+ return Array.from(aggregation.entries()).map(([key, totalAmount]) => {
279
+ const [currency, transactionType] = key.split("|");
280
+ return { currency, transactionType: transactionType, totalAmount };
281
+ });
282
+ }
249
283
  clear() {
250
284
  this.models.clear();
251
285
  }
@@ -1 +1 @@
1
- {"version":3,"file":"IMExpenseModelStore.js","sourceRoot":"","sources":["../../../src/__tests__/test-helpers/IMExpenseModelStore.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"IMExpenseModelStore.js","sourceRoot":"","sources":["../../../src/__tests__/test-helpers/IMExpenseModelStore.ts"],"names":[],"mappings":"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"}
@@ -1,5 +1,6 @@
1
1
  import { AttachmentProcessModel, SourceType } from "../../AttachmentProcessEvents";
2
- import { ExpenseCreateRequest, ExpenseUpdateRequest, ExpenseResponse, ExpensesByMonthResponse, ExpenseFilterType, ExpenseQueryRequest, ExpenseQueryResponse, CategoryPieChartResponse, BulkExpenseCreateResponse, ExpensesByDateRangeRequest, ExpensesByDateRangeResponse, PaginatedExpensesByDayResponse, PaginatedExpensesResponse, DailyTotalsResponse } from "../../contracts/expenses";
2
+ import { ExpenseCreateRequest, ExpenseUpdateRequest, ExpenseResponse, ExpenseFilterType, AccountTotals, ExpenseQueryRequest, ExpenseQueryResponse, CategoryPieChartResponse, BulkExpenseCreateResponse, ExpensesByDateRangeRequest, ExpensesByDateRangeResponse, PaginatedExpensesByDayResponse, PaginatedExpensesResponse, DailyTotalsResponse } from "../../contracts/expenses";
3
+ import { BalanceResponse } from "../../contracts/shared";
3
4
  import { EventProcessorSDK } from "../../EventProcessorSDK";
4
5
  export declare class ExpenseController {
5
6
  private readonly sdk;
@@ -31,11 +32,9 @@ export declare class ExpenseController {
31
32
  failedCount: number;
32
33
  }>;
33
34
  getExpense(userId: string, streamId: string): Promise<ExpenseResponse>;
34
- getExpensesByAccountAndMonth(userId: string, accountId: string, timeZone: string, month?: string, search?: string, sortByAmountAscending?: boolean, filters?: ExpenseFilterType[], category?: string): Promise<ExpensesByMonthResponse>;
35
35
  getExpensesByDayPaginated(userId: string, accountId: string, timeZone: string, month: string, limit?: number, beforeDate?: string, search?: string, sortByAmountAscending?: boolean, filters?: ExpenseFilterType[], category?: string): Promise<PaginatedExpensesByDayResponse>;
36
36
  private validateTimezone;
37
37
  private loadUserContext;
38
- private getFilteredMonthExpenses;
39
38
  /**
40
39
  * Paginates expenses into complete day groups.
41
40
  *
@@ -47,8 +46,12 @@ export declare class ExpenseController {
47
46
  */
48
47
  private paginateByCompleteDays;
49
48
  private groupExpensesByDayOnly;
50
- private calculateMonthBalanceAndTotals;
51
- getExpensesPaginated(userId: string, accountId: string, timeZone: string, limit?: number, offset?: number, search?: string, sortByAmountAscending?: boolean, filters?: ExpenseFilterType[], category?: string): Promise<PaginatedExpensesResponse>;
49
+ private convertAccountTotalRows;
50
+ getExpensesPaginated(userId: string, accountId: string, timeZone: string, limit?: number, offset?: number, search?: string, sortByAmountAscending?: boolean, filters?: ExpenseFilterType[], category?: string, month?: string, dateFrom?: number, dateTo?: number): Promise<PaginatedExpensesResponse>;
51
+ getAccountBalanceAndTotals(userId: string, accountId: string, dateFrom?: number, dateTo?: number, category?: string): Promise<{
52
+ balance: BalanceResponse;
53
+ totals: AccountTotals;
54
+ }>;
52
55
  getDailyTotals(userId: string, accountId: string, timeZone: string, month: string): Promise<DailyTotalsResponse>;
53
56
  getExpensesByDay(userId: string, accountId: string, timeZone: string, dayDate: string): Promise<ExpenseResponse[]>;
54
57
  getTopExpenses(userId: string, accountId: string, limit?: number, month?: string): Promise<ExpenseResponse[]>;
@@ -69,7 +72,6 @@ export declare class ExpenseController {
69
72
  streamId: string;
70
73
  }>;
71
74
  attachmentUploaded(userId: string, streamId: string, firestoreUrl: string, sourceType: SourceType, sourceId: string): Promise<void>;
72
- getAttachmentProcess(userId: string, streamId: string): Promise<AttachmentProcessModel | undefined>;
73
75
  getActiveAttachmentProcesses(userId: string): Promise<AttachmentProcessModel[]>;
74
76
  deleteAttachmentProcess(userId: string, streamId: string): Promise<void>;
75
77
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"ExpenseController.d.ts","sourceRoot":"","sources":["../../../src/client/controllers/ExpenseController.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ExpenseController.d.ts","sourceRoot":"","sources":["../../../src/client/controllers/ExpenseController.ts"],"names":[],"mappings":"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"}
@@ -10,8 +10,6 @@ const uuid_1 = require("uuid");
10
10
  const BalanceUtil_1 = require("../../utils/BalanceUtil");
11
11
  const sortingUtils_1 = require("../../utils/sortingUtils");
12
12
  const UserNameUtil_1 = require("../../utils/UserNameUtil");
13
- const searchUtil_1 = require("../../utils/searchUtil");
14
- const sortUtil_1 = require("../../utils/sortUtil");
15
13
  class ExpenseController {
16
14
  constructor(sdk) {
17
15
  this.sdk = sdk;
@@ -438,93 +436,51 @@ class ExpenseController {
438
436
  });
439
437
  return response;
440
438
  }
441
- async getExpensesByAccountAndMonth(userId, accountId, timeZone, month, search, sortByAmountAscending, filters, category) {
442
- if (!timeZone || timeZone.trim() === "") {
443
- throw new Error("Invalid timezone");
444
- }
445
- try {
446
- new Date().toLocaleString("en-US", { timeZone });
439
+ async getExpensesByDayPaginated(userId, accountId, timeZone, month, limit = 20, beforeDate, search, sortByAmountAscending, filters, category) {
440
+ this.validateTimezone(timeZone);
441
+ const monthDate = new Date(month);
442
+ const nextMonth = new Date(monthDate);
443
+ nextMonth.setMonth(nextMonth.getMonth() + 1);
444
+ const dateFrom = monthDate.getTime();
445
+ const dateTo = nextMonth.getTime() - 1;
446
+ const queryFilters = {
447
+ accountIds: [accountId],
448
+ dateFrom,
449
+ dateTo,
450
+ };
451
+ if (category) {
452
+ queryFilters.categories = [category];
447
453
  }
448
- catch (error) {
449
- throw new Error("Invalid timezone");
454
+ if (filters && filters.length > 0) {
455
+ const transactionTypes = [];
456
+ for (const filter of filters) {
457
+ if (filter === expenses_1.ExpenseFilterType.INCOME) {
458
+ transactionTypes.push(expenses_1.TransactionType.INCOME);
459
+ }
460
+ if (filter === expenses_1.ExpenseFilterType.EXPENSE) {
461
+ transactionTypes.push(expenses_1.TransactionType.EXPENSE);
462
+ }
463
+ if (filter === expenses_1.ExpenseFilterType.RECURRING) {
464
+ queryFilters.recurringOnly = true;
465
+ }
466
+ }
467
+ if (transactionTypes.length > 0) {
468
+ queryFilters.transactionTypes = transactionTypes;
469
+ }
450
470
  }
451
- const expenses = await this.modelStore.findAllByAccountIdAndDeletedIsFalse(accountId);
452
- let userExpenses = expenses.filter((e) => e.userId === userId);
453
- if (category) {
454
- userExpenses = userExpenses.filter((e) => (e.category || "Uncategorized") === category);
471
+ if (search) {
472
+ queryFilters.searchText = search;
455
473
  }
456
- const user = await this.userModelStore.getByStreamIdWhereDeletedIsFalse(userId);
457
- const toCurrency = user?.currency ?? "USD";
458
- const currencyRates = (await this.currencyStore.getCurrencyRates())?.rates ?? {};
459
- const userNameMap = await this.userNameUtil.buildUserNameMap(userId);
460
- const tagColorMap = await this.buildTagColorMap(userId);
461
- const sortedExpenses = await Promise.all((0, sortingUtils_1.sortByTransactionDateAndCreatedAt)(userExpenses).map(async (e) => this.toExpenseResponse(e, userId, toCurrency, currencyRates, userNameMap, tagColorMap)));
462
- const typeFilteredExpenses = filters && filters.length > 0
463
- ? sortedExpenses.filter((e) => {
464
- // AND logic: transaction must match ALL selected filters
465
- return filters.every((filter) => {
466
- if (filter === expenses_1.ExpenseFilterType.INCOME) {
467
- return e.transactionType === expenses_1.TransactionType.INCOME;
468
- }
469
- if (filter === expenses_1.ExpenseFilterType.EXPENSE) {
470
- return e.transactionType === expenses_1.TransactionType.EXPENSE;
471
- }
472
- if (filter === expenses_1.ExpenseFilterType.RECURRING) {
473
- return e.recurringId !== undefined;
474
- }
475
- return true;
476
- });
477
- })
478
- : sortedExpenses;
479
- const filteredExpenses = (0, searchUtil_1.fuzzySearch)({
480
- items: typeFilteredExpenses,
481
- keys: ["title", "amount.amount"],
482
- search: search ?? "",
483
- });
484
- let groupedByMonth = this.groupExpensesByMonth(filteredExpenses, timeZone, toCurrency);
485
- let expensesForBalance = userExpenses;
486
- if (month) {
487
- groupedByMonth = groupedByMonth.filter((group) => group.date === month);
488
- expensesForBalance = userExpenses.filter((expense) => {
489
- const monthStart = this.startOfMonth(new Date(expense.transactionDate).toISOString(), timeZone);
490
- return monthStart === month;
491
- });
474
+ if (sortByAmountAscending !== undefined) {
475
+ queryFilters.sortByAmount = sortByAmountAscending ? "asc" : "desc";
492
476
  }
493
- const perMonth = sortByAmountAscending !== undefined
494
- ? sortUtil_1.SortUtil.sortTransactionsByAmount(groupedByMonth, sortByAmountAscending)
495
- : groupedByMonth;
496
- const balance = await this.calculateBalance(expensesForBalance, userId);
497
- // Calculate totals from ALL expenses (unfiltered by transactionType or search)
498
- // to show overall account totals regardless of active filters
499
- const expensesForTotals = await Promise.all(expensesForBalance.map(async (e) => this.toExpenseResponse(e, userId, toCurrency, currencyRates, userNameMap, tagColorMap)));
500
- const totals = this.calculateTotals(expensesForTotals, toCurrency);
501
- const mostUsedMetadata = await this.buildMostUsedMetadata(userExpenses, userId);
502
- const response = {
503
- perMonth,
504
- balance,
505
- totals,
506
- mostUsedMetadata,
507
- };
508
- this.logger.log("[ExpenseController.getExpensesByAccountAndMonth] Returning expenses by account and month", {
509
- requestParams: {
510
- userId,
511
- accountId,
512
- timeZone,
513
- month,
514
- search,
515
- sortByAmountAscending,
516
- filters,
517
- category,
518
- },
519
- response,
520
- });
521
- return response;
522
- }
523
- async getExpensesByDayPaginated(userId, accountId, timeZone, month, limit = 20, beforeDate, search, sortByAmountAscending, filters, category) {
524
- this.validateTimezone(timeZone);
525
- const expenses = await this.modelStore.findAllByAccountIdAndDeletedIsFalse(accountId);
526
- const { toCurrency, currencyRates, userNameMap, tagColorMap } = await this.loadUserContext(userId);
527
- const monthExpenses = await this.getFilteredMonthExpenses(expenses, userId, month, timeZone, toCurrency, currencyRates, userNameMap, tagColorMap, filters, search, sortByAmountAscending, category);
477
+ const [filteredModels, accountTotalRows, userContext] = await Promise.all([
478
+ this.modelStore.queryExpenses(userId, queryFilters),
479
+ this.modelStore.getAccountTotals(accountId, userId, dateFrom, dateTo),
480
+ this.loadUserContext(userId),
481
+ ]);
482
+ const { toCurrency, currencyRates, userNameMap, tagColorMap } = userContext;
483
+ const monthExpenses = await Promise.all(filteredModels.map(async (e) => this.toExpenseResponse(e, userId, toCurrency, currencyRates, userNameMap, tagColorMap)));
528
484
  const totalTransactionCount = monthExpenses.length;
529
485
  const days = this.paginateByCompleteDays(monthExpenses, timeZone, toCurrency, limit, beforeDate);
530
486
  const lastReturnedDate = days.length > 0 ? days[days.length - 1].date : undefined;
@@ -534,7 +490,7 @@ class ExpenseController {
534
490
  return (new Date(dayKey).getTime() < new Date(lastReturnedDate).getTime());
535
491
  })
536
492
  : false;
537
- const { balance, totals } = await this.calculateMonthBalanceAndTotals(expenses, userId, month, timeZone, toCurrency, currencyRates, userNameMap, tagColorMap);
493
+ const { balance, totals } = this.convertAccountTotalRows(accountTotalRows, toCurrency, currencyRates);
538
494
  const response = {
539
495
  days,
540
496
  balance,
@@ -584,45 +540,6 @@ class ExpenseController {
584
540
  const tagColorMap = await this.buildTagColorMap(userId);
585
541
  return { toCurrency, currencyRates, userNameMap, tagColorMap };
586
542
  }
587
- async getFilteredMonthExpenses(expenses, userId, month, timeZone, toCurrency, currencyRates, userNameMap, tagColorMap, filters, search, sortByAmountAscending, category) {
588
- let userExpenses = expenses.filter((e) => e.userId === userId);
589
- if (category) {
590
- userExpenses = userExpenses.filter((e) => (e.category || "Uncategorized") === category);
591
- }
592
- const sortedExpenses = await Promise.all((0, sortingUtils_1.sortByTransactionDateAndCreatedAt)(userExpenses).map(async (e) => this.toExpenseResponse(e, userId, toCurrency, currencyRates, userNameMap, tagColorMap)));
593
- const typeFilteredExpenses = filters && filters.length > 0
594
- ? sortedExpenses.filter((e) => filters.every((filter) => {
595
- if (filter === expenses_1.ExpenseFilterType.INCOME) {
596
- return e.transactionType === expenses_1.TransactionType.INCOME;
597
- }
598
- if (filter === expenses_1.ExpenseFilterType.EXPENSE) {
599
- return e.transactionType === expenses_1.TransactionType.EXPENSE;
600
- }
601
- if (filter === expenses_1.ExpenseFilterType.RECURRING) {
602
- return e.recurringId !== undefined;
603
- }
604
- return true;
605
- }))
606
- : sortedExpenses;
607
- const searchedExpenses = (0, searchUtil_1.fuzzySearch)({
608
- items: typeFilteredExpenses,
609
- keys: ["title", "amount.amount"],
610
- search: search ?? "",
611
- });
612
- let monthExpenses = month
613
- ? searchedExpenses.filter((expense) => {
614
- const monthStart = this.startOfMonth(expense.date, timeZone);
615
- return monthStart === month;
616
- })
617
- : searchedExpenses;
618
- if (sortByAmountAscending !== undefined) {
619
- monthExpenses = [...monthExpenses].sort((a, b) => {
620
- const diff = a.defaultCurrencyAmount.amount - b.defaultCurrencyAmount.amount;
621
- return sortByAmountAscending ? diff : -diff;
622
- });
623
- }
624
- return monthExpenses;
625
- }
626
543
  /**
627
544
  * Paginates expenses into complete day groups.
628
545
  *
@@ -653,14 +570,24 @@ class ExpenseController {
653
570
  const allDayTransactions = expenses.filter((e) => this.startOfDay(e.date, timeZone) === dayDate);
654
571
  return this.groupExpensesByDayOnly(allDayTransactions, timeZone, toCurrency);
655
572
  }
656
- // Multiple days drop the last day unless it's already complete
573
+ // The last day group may be incomplete because the limit cut it mid-day.
574
+ // We prefer to drop it so the UI only shows complete days.
575
+ // However, if dropping it leaves too few transactions (< MIN_PAGE_TRANSACTIONS),
576
+ // we keep the incomplete day to avoid a nearly empty first page.
577
+ // Example: Today has 1 txn, Yesterday has 25. Limit=20 gives us
578
+ // Today(1) + Yesterday(19). Dropping Yesterday leaves just 1 txn —
579
+ // too little, so we keep Yesterday even though it's partial.
580
+ // The next page (via date cursor) will load the remaining Yesterday txns.
581
+ const MIN_PAGE_TRANSACTIONS = 10;
657
582
  const lastDay = days[days.length - 1];
658
- days = days.slice(0, -1);
583
+ const daysWithoutLast = days.slice(0, -1);
659
584
  const lastDayFullCount = expenses.filter((e) => this.startOfDay(e.date, timeZone) === lastDay.date).length;
660
- if (lastDayFullCount === lastDay.transactions.length) {
661
- days.push(lastDay);
585
+ const isLastDayComplete = lastDayFullCount === lastDay.transactions.length;
586
+ const remainingCount = daysWithoutLast.reduce((sum, d) => sum + d.transactions.length, 0);
587
+ if (isLastDayComplete || remainingCount < MIN_PAGE_TRANSACTIONS) {
588
+ return days;
662
589
  }
663
- return days;
590
+ return daysWithoutLast;
664
591
  }
665
592
  groupExpensesByDayOnly(expenses, timeZone, toCurrency) {
666
593
  const dayMap = new Map();
@@ -680,35 +607,90 @@ class ExpenseController {
680
607
  dailyBalance: this.calculateDailyBalance(dayTransactions, toCurrency),
681
608
  }));
682
609
  }
683
- async calculateMonthBalanceAndTotals(allExpenses, userId, month, timeZone, toCurrency, currencyRates, userNameMap, tagColorMap) {
684
- const expensesForBalance = allExpenses.filter((e) => {
685
- if (e.userId !== userId)
686
- return false;
687
- const monthStart = this.startOfMonth(new Date(e.transactionDate).toISOString(), timeZone);
688
- return monthStart === month;
689
- });
690
- const balance = await this.calculateBalance(expensesForBalance, userId);
691
- const expensesForTotals = await Promise.all(expensesForBalance.map(async (e) => this.toExpenseResponse(e, userId, toCurrency, currencyRates, userNameMap, tagColorMap)));
692
- const totals = this.calculateTotals(expensesForTotals, toCurrency);
610
+ convertAccountTotalRows(rows, toCurrency, currencyRates) {
611
+ let totalIncome = 0;
612
+ let totalExpense = 0;
613
+ for (const row of rows) {
614
+ const converted = this.balanceUtil.convertAmount(row.totalAmount, row.currency, toCurrency, currencyRates).amount;
615
+ if (row.transactionType === expenses_1.TransactionType.INCOME) {
616
+ totalIncome += converted;
617
+ }
618
+ else {
619
+ totalExpense += converted;
620
+ }
621
+ }
622
+ const totals = {
623
+ currency: toCurrency,
624
+ totalIncome,
625
+ totalExpense,
626
+ balance: totalIncome - totalExpense,
627
+ };
628
+ const balance = {
629
+ main: {
630
+ amount: Math.abs(totalIncome - totalExpense),
631
+ currency: toCurrency,
632
+ isOwed: totalIncome >= totalExpense,
633
+ },
634
+ other: [],
635
+ };
693
636
  return { balance, totals };
694
637
  }
695
- async getExpensesPaginated(userId, accountId, timeZone, limit = 20, offset = 0, search, sortByAmountAscending, filters, category) {
638
+ async getExpensesPaginated(userId, accountId, timeZone, limit = 20, offset = 0, search, sortByAmountAscending, filters, category, month, dateFrom, dateTo) {
696
639
  this.validateTimezone(timeZone);
697
- const expenses = await this.modelStore.findAllByAccountIdAndDeletedIsFalse(accountId);
698
- const { toCurrency, currencyRates, userNameMap, tagColorMap } = await this.loadUserContext(userId);
699
- const allFiltered = await this.getFilteredMonthExpenses(expenses, userId, undefined, timeZone, toCurrency, currencyRates, userNameMap, tagColorMap, filters, search, sortByAmountAscending, category);
700
- const totalTransactionCount = allFiltered.length;
701
- const page = allFiltered.slice(offset, offset + limit);
640
+ const queryFilters = {
641
+ accountIds: [accountId],
642
+ limit,
643
+ offset,
644
+ };
645
+ if (category) {
646
+ queryFilters.categories = [category];
647
+ }
648
+ if (dateFrom !== undefined) {
649
+ queryFilters.dateFrom = dateFrom;
650
+ }
651
+ if (dateTo !== undefined) {
652
+ queryFilters.dateTo = dateTo;
653
+ }
654
+ if (month && queryFilters.dateFrom === undefined) {
655
+ const monthDate = new Date(month);
656
+ const nextMonth = new Date(monthDate);
657
+ nextMonth.setMonth(nextMonth.getMonth() + 1);
658
+ queryFilters.dateFrom = monthDate.getTime();
659
+ queryFilters.dateTo = nextMonth.getTime() - 1;
660
+ }
661
+ if (filters && filters.length > 0) {
662
+ const transactionTypes = [];
663
+ for (const filter of filters) {
664
+ if (filter === expenses_1.ExpenseFilterType.INCOME) {
665
+ transactionTypes.push(expenses_1.TransactionType.INCOME);
666
+ }
667
+ if (filter === expenses_1.ExpenseFilterType.EXPENSE) {
668
+ transactionTypes.push(expenses_1.TransactionType.EXPENSE);
669
+ }
670
+ if (filter === expenses_1.ExpenseFilterType.RECURRING) {
671
+ queryFilters.recurringOnly = true;
672
+ }
673
+ }
674
+ if (transactionTypes.length > 0) {
675
+ queryFilters.transactionTypes = transactionTypes;
676
+ }
677
+ }
678
+ if (search) {
679
+ queryFilters.searchText = search;
680
+ }
681
+ if (sortByAmountAscending !== undefined) {
682
+ queryFilters.sortByAmount = sortByAmountAscending ? "asc" : "desc";
683
+ }
684
+ const [pageModels, totalTransactionCount, userContext] = await Promise.all([
685
+ this.modelStore.queryExpenses(userId, queryFilters),
686
+ this.modelStore.countExpenses(userId, queryFilters),
687
+ this.loadUserContext(userId),
688
+ ]);
689
+ const { toCurrency, currencyRates, userNameMap, tagColorMap } = userContext;
690
+ const data = await Promise.all(pageModels.map(async (e) => this.toExpenseResponse(e, userId, toCurrency, currencyRates, userNameMap, tagColorMap)));
702
691
  const hasMore = offset + limit < totalTransactionCount;
703
- const balance = await this.calculateBalance(expenses.filter((e) => e.userId === userId), userId);
704
- const expensesForTotals = await Promise.all(expenses
705
- .filter((e) => e.userId === userId)
706
- .map(async (e) => this.toExpenseResponse(e, userId, toCurrency, currencyRates, userNameMap, tagColorMap)));
707
- const totals = this.calculateTotals(expensesForTotals, toCurrency);
708
692
  const response = {
709
- data: page,
710
- balance,
711
- totals,
693
+ data,
712
694
  totalTransactionCount,
713
695
  offset,
714
696
  hasMore,
@@ -726,7 +708,7 @@ class ExpenseController {
726
708
  category,
727
709
  },
728
710
  responseSummary: {
729
- returnedCount: page.length,
711
+ returnedCount: data.length,
730
712
  totalTransactionCount,
731
713
  offset,
732
714
  hasMore,
@@ -734,6 +716,13 @@ class ExpenseController {
734
716
  });
735
717
  return response;
736
718
  }
719
+ async getAccountBalanceAndTotals(userId, accountId, dateFrom, dateTo, category) {
720
+ const [rows, { toCurrency, currencyRates }] = await Promise.all([
721
+ this.modelStore.getAccountTotals(accountId, userId, dateFrom, dateTo, category),
722
+ this.loadUserContext(userId),
723
+ ]);
724
+ return this.convertAccountTotalRows(rows, toCurrency, currencyRates);
725
+ }
737
726
  async getDailyTotals(userId, accountId, timeZone, month) {
738
727
  this.validateTimezone(timeZone);
739
728
  const monthDate = new Date(month);
@@ -1339,13 +1328,6 @@ class ExpenseController {
1339
1328
  firestoreUrl,
1340
1329
  });
1341
1330
  }
1342
- async getAttachmentProcess(userId, streamId) {
1343
- const model = await this.attachmentProcessModelStore?.getByStreamIdWhereDeletedIsFalse(streamId);
1344
- if (model && model.userId !== userId) {
1345
- return undefined;
1346
- }
1347
- return model;
1348
- }
1349
1331
  async getActiveAttachmentProcesses(userId) {
1350
1332
  const allProcesses = (await this.attachmentProcessModelStore?.findAllByUserIdAndDeletedIsFalse(userId)) ?? [];
1351
1333
  return allProcesses.filter((p) => p.status !== AttachmentProcessEvents_1.AttachmentProcessStatus.COMPLETED &&
@@ -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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"}
@@ -193,8 +193,6 @@ export interface DailyTotalItem {
193
193
  }
194
194
  export interface PaginatedExpensesResponse {
195
195
  data: ExpenseResponse[];
196
- balance: BalanceResponse;
197
- totals: AccountTotals;
198
196
  totalTransactionCount: number;
199
197
  offset: number;
200
198
  hasMore: boolean;
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/contracts/expenses/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/contracts/expenses/index.ts"],"names":[],"mappings":"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"}
@@ -17,6 +17,10 @@ export interface ExpenseQueryFilters {
17
17
  searchText?: string;
18
18
  hasNoCategory?: boolean;
19
19
  hasNoTags?: boolean;
20
+ recurringOnly?: boolean;
21
+ sortByAmount?: "asc" | "desc";
22
+ limit?: number;
23
+ offset?: number;
20
24
  }
21
25
  export declare const EXPENSE_MODEL_PATH = "models/expenses/expenseModels";
22
26
  export interface ExpenseModelStore extends ModelStore {
@@ -30,11 +34,18 @@ export interface ExpenseModelStore extends ModelStore {
30
34
  findAllByUserIdAndDeletedIsFalse(userId: string): Promise<ExpenseModel[]>;
31
35
  findAllByUserIdAccountIdAndDeletedIsFalse(userId: string, accountId: string): Promise<ExpenseModel[]>;
32
36
  queryExpenses(userId: string, filters: ExpenseQueryFilters): Promise<ExpenseModel[]>;
37
+ countExpenses(userId: string, filters: ExpenseQueryFilters): Promise<number>;
33
38
  getTransactionCountsByAccount(userId: string, recentSince: number): Promise<AccountTransactionCounts[]>;
34
39
  getDailyTotals(accountId: string, userId: string, dateFrom: number, dateTo: number): Promise<DailyTotalRow[]>;
35
40
  getTopExpensesByAmount(accountId: string, userId: string, limit: number, dateFrom?: number, dateTo?: number): Promise<ExpenseModel[]>;
36
41
  findByAccountIdUserIdAndDateRange(accountId: string, userId: string, dateFrom: number, dateTo: number): Promise<ExpenseModel[]>;
37
42
  getCategoryTotals(accountId: string, userId: string, dateFrom?: number, dateTo?: number): Promise<CategoryTotalRow[]>;
43
+ getAccountTotals(accountId: string, userId: string, dateFrom?: number, dateTo?: number, category?: string): Promise<AccountTotalRow[]>;
44
+ }
45
+ export interface AccountTotalRow {
46
+ currency: string;
47
+ transactionType: TransactionType;
48
+ totalAmount: number;
38
49
  }
39
50
  export interface CategoryTotalRow {
40
51
  category: string;
@@ -1 +1 @@
1
- {"version":3,"file":"ExpenseModelStore.d.ts","sourceRoot":"","sources":["../../src/store/ExpenseModelStore.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,kBAAkB,CAAC;AAChD,OAAO,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAC;AACxD,OAAO,EAAE,wBAAwB,EAAE,MAAM,uBAAuB,CAAC;AACjE,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAE1C,MAAM,WAAW,mBAAmB;IAClC,UAAU,CAAC,EAAE,MAAM,EAAE,CAAC;IACtB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,UAAU,CAAC,EAAE,MAAM,EAAE,CAAC;IACtB,IAAI,CAAC,EAAE,MAAM,EAAE,CAAC;IAChB,gBAAgB,CAAC,EAAE,eAAe,EAAE,CAAC;IACrC,cAAc,CAAC,EAAE,MAAM,EAAE,CAAC;IAC1B,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,aAAa,CAAC,EAAE,OAAO,CAAC;IACxB,SAAS,CAAC,EAAE,OAAO,CAAC;CACrB;AAED,eAAO,MAAM,kBAAkB,kCAAkC,CAAC;AAElE,MAAM,WAAW,iBAAkB,SAAQ,UAAU;IACnD,aAAa,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,YAAY,GAAG,SAAS,CAAC,CAAC;IAEnE,gCAAgC,CAC9B,QAAQ,EAAE,MAAM,GACf,OAAO,CAAC,YAAY,GAAG,SAAS,CAAC,CAAC;IAErC,IAAI,CAAC,KAAK,EAAE,YAAY,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAEzC,yCAAyC,CACvC,MAAM,EAAE,MAAM,EACd,SAAS,EAAE,MAAM,GAChB,OAAO,CAAC,YAAY,GAAG,SAAS,CAAC,CAAC;IAErC,wBAAwB,CACtB,MAAM,EAAE,MAAM,EACd,SAAS,EAAE,MAAM,GAChB,OAAO,CAAC,YAAY,GAAG,SAAS,CAAC,CAAC;IAErC,mCAAmC,CACjC,SAAS,EAAE,MAAM,GAChB,OAAO,CAAC,YAAY,EAAE,CAAC,CAAC;IAE3B,mCAAmC,CACjC,SAAS,EAAE,MAAM,GAChB,OAAO,CAAC,YAAY,EAAE,CAAC,CAAC;IAE3B,gCAAgC,CAC9B,MAAM,EAAE,MAAM,GACb,OAAO,CAAC,YAAY,EAAE,CAAC,CAAC;IAE3B,yCAAyC,CACvC,MAAM,EAAE,MAAM,EACd,SAAS,EAAE,MAAM,GAChB,OAAO,CAAC,YAAY,EAAE,CAAC,CAAC;IAE3B,aAAa,CACX,MAAM,EAAE,MAAM,EACd,OAAO,EAAE,mBAAmB,GAC3B,OAAO,CAAC,YAAY,EAAE,CAAC,CAAC;IAE3B,6BAA6B,CAC3B,MAAM,EAAE,MAAM,EACd,WAAW,EAAE,MAAM,GAClB,OAAO,CAAC,wBAAwB,EAAE,CAAC,CAAC;IAEvC,cAAc,CACZ,SAAS,EAAE,MAAM,EACjB,MAAM,EAAE,MAAM,EACd,QAAQ,EAAE,MAAM,EAChB,MAAM,EAAE,MAAM,GACb,OAAO,CAAC,aAAa,EAAE,CAAC,CAAC;IAE5B,sBAAsB,CACpB,SAAS,EAAE,MAAM,EACjB,MAAM,EAAE,MAAM,EACd,KAAK,EAAE,MAAM,EACb,QAAQ,CAAC,EAAE,MAAM,EACjB,MAAM,CAAC,EAAE,MAAM,GACd,OAAO,CAAC,YAAY,EAAE,CAAC,CAAC;IAE3B,iCAAiC,CAC/B,SAAS,EAAE,MAAM,EACjB,MAAM,EAAE,MAAM,EACd,QAAQ,EAAE,MAAM,EAChB,MAAM,EAAE,MAAM,GACb,OAAO,CAAC,YAAY,EAAE,CAAC,CAAC;IAE3B,iBAAiB,CACf,SAAS,EAAE,MAAM,EACjB,MAAM,EAAE,MAAM,EACd,QAAQ,CAAC,EAAE,MAAM,EACjB,MAAM,CAAC,EAAE,MAAM,GACd,OAAO,CAAC,gBAAgB,EAAE,CAAC,CAAC;CAChC;AAED,MAAM,WAAW,gBAAgB;IAC/B,QAAQ,EAAE,MAAM,CAAC;IACjB,QAAQ,EAAE,MAAM,CAAC;IACjB,eAAe,EAAE,eAAe,CAAC;IACjC,WAAW,EAAE,MAAM,CAAC;IACpB,KAAK,EAAE,MAAM,CAAC;CACf;AAED,MAAM,WAAW,aAAa;IAC5B,eAAe,EAAE,MAAM,CAAC;IACxB,QAAQ,EAAE,MAAM,CAAC;IACjB,eAAe,EAAE,eAAe,CAAC;IACjC,WAAW,EAAE,MAAM,CAAC;CACrB"}
1
+ {"version":3,"file":"ExpenseModelStore.d.ts","sourceRoot":"","sources":["../../src/store/ExpenseModelStore.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"ExpenseModelStore.js","sourceRoot":"","sources":["../../src/store/ExpenseModelStore.ts"],"names":[],"mappings":";;;AAsBa,QAAA,kBAAkB,GAAG,+BAA+B,CAAC"}
1
+ {"version":3,"file":"ExpenseModelStore.js","sourceRoot":"","sources":["../../src/store/ExpenseModelStore.ts"],"names":[],"mappings":";;;AA0Ba,QAAA,kBAAkB,GAAG,+BAA+B,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@zeeshan60/event-processor",
3
- "version": "1.0.193",
3
+ "version": "1.0.195",
4
4
  "description": "Shared event sourcing infrastructure for Loan Tracker projects",
5
5
  "main": "dist/index.js",
6
6
  "types": "dist/index.d.ts",
@@ -1,7 +0,0 @@
1
- import { ExpensesByMonthResponse, CategoryPieChartResponse } from "../contracts/expenses";
2
- import { CategoryModel } from "../CategoryEvents";
3
- export declare class CategoryPieChartUtil {
4
- static transform(expensesResponse: ExpensesByMonthResponse, categories: CategoryModel[]): CategoryPieChartResponse;
5
- private static buildPieChartItems;
6
- }
7
- //# sourceMappingURL=CategoryPieChartUtil.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"CategoryPieChartUtil.d.ts","sourceRoot":"","sources":["../../src/utils/CategoryPieChartUtil.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,uBAAuB,EACvB,wBAAwB,EAGzB,MAAM,uBAAuB,CAAC;AAC/B,OAAO,EAAE,aAAa,EAAE,MAAM,mBAAmB,CAAC;AAElD,qBAAa,oBAAoB;IAC/B,MAAM,CAAC,SAAS,CACd,gBAAgB,EAAE,uBAAuB,EACzC,UAAU,EAAE,aAAa,EAAE,GAC1B,wBAAwB;IAsE3B,OAAO,CAAC,MAAM,CAAC,kBAAkB;CAyBlC"}
@@ -1,64 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.CategoryPieChartUtil = void 0;
4
- const expenses_1 = require("../contracts/expenses");
5
- class CategoryPieChartUtil {
6
- static transform(expensesResponse, categories) {
7
- const allTransactions = expensesResponse.perMonth.flatMap((m) => m.transactions);
8
- const categoryMap = new Map(categories.map((c) => [c.name, c]));
9
- const incomeAggregation = new Map();
10
- const expenseAggregation = new Map();
11
- for (const transaction of allTransactions) {
12
- const categoryName = transaction.category || "Uncategorized";
13
- const amount = transaction.defaultCurrencyAmount.amount;
14
- const aggregation = transaction.transactionType === expenses_1.TransactionType.INCOME
15
- ? incomeAggregation
16
- : expenseAggregation;
17
- const existing = aggregation.get(categoryName) || {
18
- amount: 0,
19
- count: 0,
20
- };
21
- aggregation.set(categoryName, {
22
- amount: existing.amount + amount,
23
- count: existing.count + 1,
24
- });
25
- }
26
- let totalIncome = 0;
27
- for (const { amount } of incomeAggregation.values()) {
28
- totalIncome += amount;
29
- }
30
- let totalExpense = 0;
31
- for (const { amount } of expenseAggregation.values()) {
32
- totalExpense += amount;
33
- }
34
- const currency = expensesResponse.totals.currency;
35
- const incomes = this.buildPieChartItems(incomeAggregation, categoryMap, currency, totalIncome);
36
- const expenses = this.buildPieChartItems(expenseAggregation, categoryMap, currency, totalExpense);
37
- return {
38
- incomes,
39
- expenses,
40
- totalIncome,
41
- totalExpense,
42
- currency,
43
- };
44
- }
45
- static buildPieChartItems(aggregation, categoryMap, currency, total) {
46
- const items = [];
47
- for (const [categoryName, { amount, count }] of aggregation) {
48
- const categoryModel = categoryMap.get(categoryName);
49
- items.push({
50
- categoryName,
51
- categoryColor: categoryModel?.color ?? "#808080",
52
- categoryIcon: categoryModel?.icon ?? "help-circle",
53
- amount,
54
- currency,
55
- percentage: total > 0 ? (amount / total) * 100 : 0,
56
- transactionCount: count,
57
- });
58
- }
59
- items.sort((a, b) => b.amount - a.amount);
60
- return items;
61
- }
62
- }
63
- exports.CategoryPieChartUtil = CategoryPieChartUtil;
64
- //# sourceMappingURL=CategoryPieChartUtil.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"CategoryPieChartUtil.js","sourceRoot":"","sources":["../../src/utils/CategoryPieChartUtil.ts"],"names":[],"mappings":"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"}