@zeeshan60/event-processor 1.0.15 → 1.0.16

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 (83) hide show
  1. package/README.md +29 -22
  2. package/dist/ActivityEventHandler.d.ts +3 -3
  3. package/dist/ActivityEventHandler.d.ts.map +1 -1
  4. package/dist/ActivityEventHandler.js +3 -8
  5. package/dist/BaseEventHandler.d.ts +5 -3
  6. package/dist/BaseEventHandler.d.ts.map +1 -1
  7. package/dist/BaseEventHandler.js +11 -0
  8. package/dist/EventProcessorSDK.d.ts +4 -0
  9. package/dist/EventProcessorSDK.d.ts.map +1 -1
  10. package/dist/EventProcessorSDK.js +7 -0
  11. package/dist/FriendEventHandler.d.ts +4 -2
  12. package/dist/FriendEventHandler.d.ts.map +1 -1
  13. package/dist/FriendEventHandler.js +50 -36
  14. package/dist/GroupEventHandler.d.ts +2 -2
  15. package/dist/GroupEventHandler.d.ts.map +1 -1
  16. package/dist/GroupEventHandler.js +235 -186
  17. package/dist/GroupTransactionEventHandler.d.ts +1 -2
  18. package/dist/GroupTransactionEventHandler.d.ts.map +1 -1
  19. package/dist/GroupTransactionEventHandler.js +4 -9
  20. package/dist/TransactionEventHandler.d.ts +1 -2
  21. package/dist/TransactionEventHandler.d.ts.map +1 -1
  22. package/dist/TransactionEventHandler.js +4 -9
  23. package/dist/UserEventHandler.d.ts +1 -2
  24. package/dist/UserEventHandler.d.ts.map +1 -1
  25. package/dist/UserEventHandler.js +4 -9
  26. package/dist/__tests__/test-helpers/IMCurrencyStore.d.ts +8 -0
  27. package/dist/__tests__/test-helpers/IMCurrencyStore.d.ts.map +1 -0
  28. package/dist/__tests__/test-helpers/IMCurrencyStore.js +16 -0
  29. package/dist/__tests__/test-helpers/IMTransactionModelStore.d.ts +2 -0
  30. package/dist/__tests__/test-helpers/IMTransactionModelStore.d.ts.map +1 -1
  31. package/dist/__tests__/test-helpers/IMTransactionModelStore.js +20 -0
  32. package/dist/__tests__/test-helpers/IMUserModelStore.d.ts +3 -0
  33. package/dist/__tests__/test-helpers/IMUserModelStore.d.ts.map +1 -1
  34. package/dist/__tests__/test-helpers/IMUserModelStore.js +10 -0
  35. package/dist/client/controllers/FriendController.d.ts +4 -0
  36. package/dist/client/controllers/FriendController.d.ts.map +1 -1
  37. package/dist/client/controllers/FriendController.js +45 -15
  38. package/dist/client/controllers/TransactionController.d.ts +7 -1
  39. package/dist/client/controllers/TransactionController.d.ts.map +1 -1
  40. package/dist/client/controllers/TransactionController.js +61 -0
  41. package/dist/common/CurrencyRate.d.ts +7 -0
  42. package/dist/common/CurrencyRate.d.ts.map +1 -0
  43. package/dist/common/CurrencyRate.js +2 -0
  44. package/dist/contracts/friends/index.d.ts +1 -9
  45. package/dist/contracts/friends/index.d.ts.map +1 -1
  46. package/dist/environment.d.ts +12 -0
  47. package/dist/environment.d.ts.map +1 -0
  48. package/dist/environment.js +50 -0
  49. package/dist/events.d.ts +2 -0
  50. package/dist/events.d.ts.map +1 -1
  51. package/dist/events.js +7 -1
  52. package/dist/index.d.ts +3 -1
  53. package/dist/index.d.ts.map +1 -1
  54. package/dist/index.js +8 -1
  55. package/dist/store/CurrencyStore.d.ts +5 -0
  56. package/dist/store/CurrencyStore.d.ts.map +1 -0
  57. package/dist/store/CurrencyStore.js +6 -0
  58. package/dist/store/TransactionModelStore.d.ts +2 -0
  59. package/dist/store/TransactionModelStore.d.ts.map +1 -1
  60. package/dist/store/UserModelStore.d.ts +1 -0
  61. package/dist/store/UserModelStore.d.ts.map +1 -1
  62. package/dist/utils/BalanceUtil.d.ts +13 -0
  63. package/dist/utils/BalanceUtil.d.ts.map +1 -0
  64. package/dist/utils/BalanceUtil.js +97 -0
  65. package/package.json +1 -1
  66. package/dist/client/handlers/UIFriendEventHandler.d.ts +0 -16
  67. package/dist/client/handlers/UIFriendEventHandler.d.ts.map +0 -1
  68. package/dist/client/handlers/UIFriendEventHandler.js +0 -27
  69. package/dist/client/handlers/UIGroupEventHandler.d.ts +0 -18
  70. package/dist/client/handlers/UIGroupEventHandler.d.ts.map +0 -1
  71. package/dist/client/handlers/UIGroupEventHandler.js +0 -28
  72. package/dist/client/handlers/UIGroupTransactionEventHandler.d.ts +0 -18
  73. package/dist/client/handlers/UIGroupTransactionEventHandler.d.ts.map +0 -1
  74. package/dist/client/handlers/UIGroupTransactionEventHandler.js +0 -28
  75. package/dist/client/handlers/UITransactionEventHandler.d.ts +0 -14
  76. package/dist/client/handlers/UITransactionEventHandler.d.ts.map +0 -1
  77. package/dist/client/handlers/UITransactionEventHandler.js +0 -26
  78. package/dist/client/handlers/UIUserEventHandler.d.ts +0 -12
  79. package/dist/client/handlers/UIUserEventHandler.d.ts.map +0 -1
  80. package/dist/client/handlers/UIUserEventHandler.js +0 -29
  81. package/dist/utils/userPathUtils.d.ts +0 -6
  82. package/dist/utils/userPathUtils.d.ts.map +0 -1
  83. package/dist/utils/userPathUtils.js +0 -16
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AACA,cAAc,UAAU,CAAC;AAGzB,OAAO,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AAGtD,OAAO,EACH,gBAAgB,EAChB,SAAS,EACT,WAAW,EACX,UAAU,EACV,qBAAqB,EACrB,gBAAgB,GACnB,MAAM,uBAAuB,CAAC;AAG/B,OAAO,EAAE,cAAc,EAAE,MAAM,qCAAqC,CAAC;AACrE,OAAO,EAAE,gBAAgB,EAAE,MAAM,uCAAuC,CAAC;AACzE,OAAO,EAAE,qBAAqB,EAAE,MAAM,4CAA4C,CAAC;AAGnF,OAAO,EAAE,cAAc,EAAE,MAAM,kCAAkC,CAAC;AAGlE,OAAO,EACH,iBAAiB,EACjB,aAAa,EACb,iBAAiB,EACjB,mBAAmB,EACnB,wBAAwB,EACxB,iBAAiB,EACjB,mBAAmB,EACnB,qBAAqB,EACrB,0BAA0B,EAC1B,oBAAoB,EACpB,+BAA+B,EAC/B,uBAAuB,EACvB,kBAAkB,EAClB,wBAAwB,EACxB,gBAAgB,EAChB,gBAAgB,EAChB,gBAAgB,EAChB,WAAW,GACd,MAAM,qBAAqB,CAAC;AAG7B,OAAO,EAAE,kBAAkB,EAAE,WAAW,EAAE,MAAM,sBAAsB,CAAC;AAGvE,OAAO,EAAE,eAAe,EAAE,MAAM,4BAA4B,CAAC;AAG7D,YAAY,EAAE,kBAAkB,EAAE,MAAM,6BAA6B,CAAC;AACtE,OAAO,EAAE,qBAAqB,EAAE,MAAM,6BAA6B,CAAC;AAGpE,OAAO,EAAE,oBAAoB,EAAE,MAAM,qBAAqB,CAAC;AAG3D,eAAO,MAAM,SAAS;;CAErB,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AACA,cAAc,UAAU,CAAC;AAGzB,OAAO,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AAGtD,OAAO,EACH,gBAAgB,EAChB,SAAS,EACT,WAAW,EACX,UAAU,EACV,qBAAqB,EACrB,gBAAgB,GACnB,MAAM,uBAAuB,CAAC;AAG/B,OAAO,EAAE,cAAc,EAAE,MAAM,qCAAqC,CAAC;AACrE,OAAO,EAAE,gBAAgB,EAAE,MAAM,uCAAuC,CAAC;AACzE,OAAO,EAAE,qBAAqB,EAAE,MAAM,4CAA4C,CAAC;AAGnF,OAAO,EAAE,cAAc,EAAE,MAAM,kCAAkC,CAAC;AAGlE,OAAO,EACH,iBAAiB,EACjB,aAAa,EACb,iBAAiB,EACjB,mBAAmB,EACnB,wBAAwB,EACxB,iBAAiB,EACjB,mBAAmB,EACnB,qBAAqB,EACrB,0BAA0B,EAC1B,oBAAoB,EACpB,+BAA+B,EAC/B,uBAAuB,EACvB,kBAAkB,EAClB,gBAAgB,EAChB,wBAAwB,EACxB,gBAAgB,EAChB,gBAAgB,EAChB,gBAAgB,EAChB,WAAW,GACd,MAAM,qBAAqB,CAAC;AAG7B,OAAO,EAAE,kBAAkB,EAAE,WAAW,EAAE,MAAM,sBAAsB,CAAC;AAGvE,OAAO,EAAE,eAAe,EAAE,MAAM,4BAA4B,CAAC;AAG7D,OAAO,EAAE,aAAa,EAAE,MAAM,uBAAuB,CAAC;AACtD,YAAY,EAAE,YAAY,EAAE,MAAM,uBAAuB,CAAC;AAG1D,YAAY,EAAE,kBAAkB,EAAE,MAAM,6BAA6B,CAAC;AACtE,OAAO,EAAE,qBAAqB,EAAE,MAAM,6BAA6B,CAAC;AAGpE,OAAO,EAAE,oBAAoB,EAAE,MAAM,qBAAqB,CAAC;AAG3D,eAAO,MAAM,SAAS;;CAErB,CAAC"}
package/dist/index.js CHANGED
@@ -14,9 +14,12 @@ var __exportStar = (this && this.__exportStar) || function(m, exports) {
14
14
  for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
15
15
  };
16
16
  Object.defineProperty(exports, "__esModule", { value: true });
17
- exports.residence = exports.__resetSDKForTesting = exports.EventConverterFactory = exports.ModelChangeEmitter = exports.isSDKInitialized = exports.firestoreToEvent = exports.eventToFirestore = exports.getModelChangeObservable = exports.getFirebaseAdapter = exports.getActivityEventHandler = exports.getGroupTransactionEventHandler = exports.getGroupEventHandler = exports.getTransactionEventHandler = exports.getFriendEventHandler = exports.getUserEventHandler = exports.getUIEventHandler = exports.getTransactionController = exports.getFriendController = exports.getUserController = exports.initializeSDK = exports.EventProcessorSDK = exports.UIEventHandler = exports.TransactionController = exports.FriendController = exports.UserController = void 0;
17
+ exports.residence = exports.__resetSDKForTesting = exports.EventConverterFactory = exports.CurrencyStore = exports.ModelChangeEmitter = exports.isSDKInitialized = exports.firestoreToEvent = exports.eventToFirestore = exports.getModelChangeObservable = exports.getCurrencyStore = exports.getFirebaseAdapter = exports.getActivityEventHandler = exports.getGroupTransactionEventHandler = exports.getGroupEventHandler = exports.getTransactionEventHandler = exports.getFriendEventHandler = exports.getUserEventHandler = exports.getUIEventHandler = exports.getTransactionController = exports.getFriendController = exports.getUserController = exports.initializeSDK = exports.EventProcessorSDK = exports.UIEventHandler = exports.TransactionController = exports.FriendController = exports.UserController = exports.BaseEventHandler = void 0;
18
18
  // Export all backend event definitions here
19
19
  __exportStar(require("./events"), exports);
20
+ // Export base event handler interface
21
+ var BaseEventHandler_1 = require("./BaseEventHandler");
22
+ Object.defineProperty(exports, "BaseEventHandler", { enumerable: true, get: function () { return BaseEventHandler_1.BaseEventHandler; } });
20
23
  // Export controllers
21
24
  var UserController_1 = require("./client/controllers/UserController");
22
25
  Object.defineProperty(exports, "UserController", { enumerable: true, get: function () { return UserController_1.UserController; } });
@@ -42,6 +45,7 @@ Object.defineProperty(exports, "getGroupEventHandler", { enumerable: true, get:
42
45
  Object.defineProperty(exports, "getGroupTransactionEventHandler", { enumerable: true, get: function () { return EventProcessorSDK_1.getGroupTransactionEventHandler; } });
43
46
  Object.defineProperty(exports, "getActivityEventHandler", { enumerable: true, get: function () { return EventProcessorSDK_1.getActivityEventHandler; } });
44
47
  Object.defineProperty(exports, "getFirebaseAdapter", { enumerable: true, get: function () { return EventProcessorSDK_1.getFirebaseAdapter; } });
48
+ Object.defineProperty(exports, "getCurrencyStore", { enumerable: true, get: function () { return EventProcessorSDK_1.getCurrencyStore; } });
45
49
  Object.defineProperty(exports, "getModelChangeObservable", { enumerable: true, get: function () { return EventProcessorSDK_1.getModelChangeObservable; } });
46
50
  Object.defineProperty(exports, "eventToFirestore", { enumerable: true, get: function () { return EventProcessorSDK_1.eventToFirestore; } });
47
51
  Object.defineProperty(exports, "firestoreToEvent", { enumerable: true, get: function () { return EventProcessorSDK_1.firestoreToEvent; } });
@@ -49,6 +53,9 @@ Object.defineProperty(exports, "isSDKInitialized", { enumerable: true, get: func
49
53
  // Export ModelChangeEmitter
50
54
  var ModelChangeEmitter_1 = require("./ModelChangeEmitter");
51
55
  Object.defineProperty(exports, "ModelChangeEmitter", { enumerable: true, get: function () { return ModelChangeEmitter_1.ModelChangeEmitter; } });
56
+ // Export currency store and types
57
+ var CurrencyStore_1 = require("./store/CurrencyStore");
58
+ Object.defineProperty(exports, "CurrencyStore", { enumerable: true, get: function () { return CurrencyStore_1.CurrencyStore; } });
52
59
  var eventConverter_1 = require("./converters/eventConverter");
53
60
  Object.defineProperty(exports, "EventConverterFactory", { enumerable: true, get: function () { return eventConverter_1.EventConverterFactory; } });
54
61
  // Export singleton utilities for testing
@@ -0,0 +1,5 @@
1
+ import { CurrencyRate } from "../common/CurrencyRate";
2
+ export declare abstract class CurrencyStore {
3
+ abstract getCurrencyRates(): Promise<CurrencyRate | undefined>;
4
+ }
5
+ //# sourceMappingURL=CurrencyStore.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"CurrencyStore.d.ts","sourceRoot":"","sources":["../../src/store/CurrencyStore.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,wBAAwB,CAAC;AAEtD,8BAAsB,aAAa;IAC/B,QAAQ,CAAC,gBAAgB,IAAI,OAAO,CAAC,YAAY,GAAG,SAAS,CAAC;CACjE"}
@@ -0,0 +1,6 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.CurrencyStore = void 0;
4
+ class CurrencyStore {
5
+ }
6
+ exports.CurrencyStore = CurrencyStore;
@@ -5,6 +5,8 @@ export interface TransactionModelStore extends ModelStore {
5
5
  getByStreamIdWhereDeletedIsFalse(streamId: string): Promise<TransactionModel | undefined>;
6
6
  findByUserAndLogicalTransactionId(userId: string, recipientUserId: string, logicalTransactionId: string): Promise<TransactionModel | undefined>;
7
7
  findByGroupTransactionId(userId: string, groupTransactionId: string): Promise<TransactionModel[]>;
8
+ findByUserIdAndRecipientUserIdWhereDeletedIsFalse(userId: string, recipientUserId: string): Promise<TransactionModel[]>;
9
+ findAllByUserIdWhereDeletedIsFalse(userId: string): Promise<TransactionModel[]>;
8
10
  save(model: TransactionModel): Promise<void>;
9
11
  }
10
12
  //# sourceMappingURL=TransactionModelStore.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"TransactionModelStore.d.ts","sourceRoot":"","sources":["../../src/store/TransactionModelStore.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAE,MAAM,IAAI,CAAC;AACtC,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAE1C,MAAM,WAAW,qBAAsB,SAAQ,UAAU;IACrD,aAAa,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,gBAAgB,GAAG,SAAS,CAAC,CAAC;IAEvE,gCAAgC,CAC5B,QAAQ,EAAE,MAAM,GACjB,OAAO,CAAC,gBAAgB,GAAG,SAAS,CAAC,CAAC;IAEzC,iCAAiC,CAC7B,MAAM,EAAE,MAAM,EACd,eAAe,EAAE,MAAM,EACvB,oBAAoB,EAAE,MAAM,GAC7B,OAAO,CAAC,gBAAgB,GAAG,SAAS,CAAC,CAAC;IAEzC,wBAAwB,CACpB,MAAM,EAAE,MAAM,EACd,kBAAkB,EAAE,MAAM,GAC3B,OAAO,CAAC,gBAAgB,EAAE,CAAC,CAAC;IAE/B,IAAI,CAAC,KAAK,EAAE,gBAAgB,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;CAChD"}
1
+ {"version":3,"file":"TransactionModelStore.d.ts","sourceRoot":"","sources":["../../src/store/TransactionModelStore.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAE,MAAM,IAAI,CAAC;AACtC,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAE1C,MAAM,WAAW,qBAAsB,SAAQ,UAAU;IACrD,aAAa,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,gBAAgB,GAAG,SAAS,CAAC,CAAC;IAEvE,gCAAgC,CAC5B,QAAQ,EAAE,MAAM,GACjB,OAAO,CAAC,gBAAgB,GAAG,SAAS,CAAC,CAAC;IAEzC,iCAAiC,CAC7B,MAAM,EAAE,MAAM,EACd,eAAe,EAAE,MAAM,EACvB,oBAAoB,EAAE,MAAM,GAC7B,OAAO,CAAC,gBAAgB,GAAG,SAAS,CAAC,CAAC;IAEzC,wBAAwB,CACpB,MAAM,EAAE,MAAM,EACd,kBAAkB,EAAE,MAAM,GAC3B,OAAO,CAAC,gBAAgB,EAAE,CAAC,CAAC;IAE/B,iDAAiD,CAC7C,MAAM,EAAE,MAAM,EACd,eAAe,EAAE,MAAM,GACxB,OAAO,CAAC,gBAAgB,EAAE,CAAC,CAAC;IAE/B,kCAAkC,CAC9B,MAAM,EAAE,MAAM,GACf,OAAO,CAAC,gBAAgB,EAAE,CAAC,CAAC;IAE/B,IAAI,CAAC,KAAK,EAAE,gBAAgB,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;CAChD"}
@@ -7,5 +7,6 @@ export interface UserModelStore extends ModelStore {
7
7
  findByEmail(email: string): Promise<UserModel | undefined>;
8
8
  findByPhone(phone: string): Promise<UserModel | undefined>;
9
9
  findByFirebaseUid(uid: string): Promise<UserModel | undefined>;
10
+ appUser(): Promise<UserModel>;
10
11
  }
11
12
  //# sourceMappingURL=UserModelStore.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"UserModelStore.d.ts","sourceRoot":"","sources":["../../src/store/UserModelStore.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,IAAI,CAAC;AAC/B,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAE1C,MAAM,WAAW,cAAe,SAAQ,UAAU;IAC9C,aAAa,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,SAAS,GAAG,SAAS,CAAC,CAAC;IAEhE,gCAAgC,CAC5B,QAAQ,EAAE,MAAM,GACjB,OAAO,CAAC,SAAS,GAAG,SAAS,CAAC,CAAC;IAElC,IAAI,CAAC,KAAK,EAAE,SAAS,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAEtC,WAAW,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,SAAS,GAAG,SAAS,CAAC,CAAC;IAE3D,WAAW,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,SAAS,GAAG,SAAS,CAAC,CAAC;IAE3D,iBAAiB,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,SAAS,GAAG,SAAS,CAAC,CAAC;CAClE"}
1
+ {"version":3,"file":"UserModelStore.d.ts","sourceRoot":"","sources":["../../src/store/UserModelStore.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,IAAI,CAAC;AAC/B,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAE1C,MAAM,WAAW,cAAe,SAAQ,UAAU;IAC9C,aAAa,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,SAAS,GAAG,SAAS,CAAC,CAAC;IAEhE,gCAAgC,CAC5B,QAAQ,EAAE,MAAM,GACjB,OAAO,CAAC,SAAS,GAAG,SAAS,CAAC,CAAC;IAElC,IAAI,CAAC,KAAK,EAAE,SAAS,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAEtC,WAAW,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,SAAS,GAAG,SAAS,CAAC,CAAC;IAE3D,WAAW,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,SAAS,GAAG,SAAS,CAAC,CAAC;IAE3D,iBAAiB,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,SAAS,GAAG,SAAS,CAAC,CAAC;IAE/D,OAAO,IAAI,OAAO,CAAC,SAAS,CAAC,CAAC;CACjC"}
@@ -0,0 +1,13 @@
1
+ import { TransactionModel } from "../TransactionEvents";
2
+ import { UserModelStore } from "../store/UserModelStore";
3
+ import { CurrencyStore } from "../store/CurrencyStore";
4
+ import { BalanceResponse } from "../contracts/shared";
5
+ export declare class BalanceUtil {
6
+ private userModelStore;
7
+ private currencyStore;
8
+ constructor(userModelStore: UserModelStore, currencyStore: CurrencyStore);
9
+ calculateBalance(transactions: TransactionModel[], userId: string): Promise<BalanceResponse>;
10
+ private calculateCurrencyBalances;
11
+ private convertCurrency;
12
+ }
13
+ //# sourceMappingURL=BalanceUtil.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"BalanceUtil.d.ts","sourceRoot":"","sources":["../../src/utils/BalanceUtil.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAE,MAAM,sBAAsB,CAAC;AACxD,OAAO,EAAE,cAAc,EAAE,MAAM,yBAAyB,CAAC;AACzD,OAAO,EAAE,aAAa,EAAE,MAAM,wBAAwB,CAAC;AACvD,OAAO,EAEH,eAAe,EAElB,MAAM,qBAAqB,CAAC;AAE7B,qBAAa,WAAW;IAEhB,OAAO,CAAC,cAAc;IACtB,OAAO,CAAC,aAAa;gBADb,cAAc,EAAE,cAAc,EAC9B,aAAa,EAAE,aAAa;IAGlC,gBAAgB,CAClB,YAAY,EAAE,gBAAgB,EAAE,EAChC,MAAM,EAAE,MAAM,GACf,OAAO,CAAC,eAAe,CAAC;IAmE3B,OAAO,CAAC,yBAAyB;IAwCjC,OAAO,CAAC,eAAe;CAmB1B"}
@@ -0,0 +1,97 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.BalanceUtil = void 0;
4
+ class BalanceUtil {
5
+ constructor(userModelStore, currencyStore) {
6
+ this.userModelStore = userModelStore;
7
+ this.currencyStore = currencyStore;
8
+ }
9
+ async calculateBalance(transactions, userId) {
10
+ if (transactions.length === 0) {
11
+ return {
12
+ main: undefined,
13
+ other: [],
14
+ };
15
+ }
16
+ const user = await this.userModelStore.getByStreamIdWhereDeletedIsFalse(userId);
17
+ const baseCurrency = user?.currency;
18
+ const currencyBalances = this.calculateCurrencyBalances(transactions);
19
+ if (!baseCurrency || currencyBalances.size === 0) {
20
+ return {
21
+ main: undefined,
22
+ other: [],
23
+ };
24
+ }
25
+ const currencyRates = await this.currencyStore.getCurrencyRates();
26
+ const other = [];
27
+ let totalConvertedAmount = 0;
28
+ let mainIsOwed = false;
29
+ for (const [currency, balance] of currencyBalances.entries()) {
30
+ const convertedAmount = this.convertCurrency(balance.amount, currency, baseCurrency, currencyRates?.rates);
31
+ other.push({
32
+ amount: {
33
+ amount: Math.abs(balance.amount),
34
+ currency: currency,
35
+ isOwed: balance.amount < 0,
36
+ },
37
+ convertedAmount: {
38
+ amount: Math.abs(convertedAmount),
39
+ currency: baseCurrency,
40
+ isOwed: convertedAmount < 0,
41
+ },
42
+ });
43
+ totalConvertedAmount += convertedAmount;
44
+ }
45
+ if (totalConvertedAmount < 0) {
46
+ mainIsOwed = true;
47
+ }
48
+ const main = {
49
+ amount: Math.abs(totalConvertedAmount),
50
+ currency: baseCurrency,
51
+ isOwed: mainIsOwed,
52
+ };
53
+ return {
54
+ main,
55
+ other,
56
+ };
57
+ }
58
+ calculateCurrencyBalances(transactions) {
59
+ const balances = new Map();
60
+ for (const transaction of transactions) {
61
+ if (transaction.deleted) {
62
+ continue;
63
+ }
64
+ const existingBalance = balances.get(transaction.currency) || {
65
+ amount: 0,
66
+ isOwed: false,
67
+ };
68
+ const signedAmount = transaction.isOwed
69
+ ? -transaction.amount
70
+ : transaction.amount;
71
+ const newAmount = existingBalance.amount + signedAmount;
72
+ balances.set(transaction.currency, {
73
+ amount: newAmount,
74
+ isOwed: newAmount < 0,
75
+ });
76
+ }
77
+ const nonZeroBalances = new Map();
78
+ for (const [currency, balance] of balances.entries()) {
79
+ if (balance.amount !== 0) {
80
+ nonZeroBalances.set(currency, balance);
81
+ }
82
+ }
83
+ return nonZeroBalances;
84
+ }
85
+ convertCurrency(amount, fromCurrency, toCurrency, rates) {
86
+ if (fromCurrency === toCurrency) {
87
+ return amount;
88
+ }
89
+ if (!rates || !rates[fromCurrency] || !rates[toCurrency]) {
90
+ return amount;
91
+ }
92
+ const amountInBase = amount / rates[fromCurrency];
93
+ const convertedAmount = amountInBase * rates[toCurrency];
94
+ return convertedAmount;
95
+ }
96
+ }
97
+ exports.BalanceUtil = BalanceUtil;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@zeeshan60/event-processor",
3
- "version": "1.0.15",
3
+ "version": "1.0.16",
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,16 +0,0 @@
1
- import { FriendModel, FriendEvent } from "../..";
2
- import { FriendModelStore } from "../..";
3
- import { UserModelStore } from "../..";
4
- import { FriendEventStore } from "../..";
5
- import { UserEventStore } from "../..";
6
- import { ActivityEventHandler } from "../../ActivityEventHandler";
7
- export declare class UIFriendEventHandler {
8
- private modelStore;
9
- private userModelStore;
10
- private friendEventStore;
11
- private userEventStore;
12
- private activityEventHandler?;
13
- constructor(modelStore: FriendModelStore, userModelStore: UserModelStore, friendEventStore: FriendEventStore, userEventStore: UserEventStore, activityEventHandler?: ActivityEventHandler | undefined);
14
- handleEvent(event: FriendEvent): Promise<FriendModel>;
15
- }
16
- //# sourceMappingURL=UIFriendEventHandler.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"UIFriendEventHandler.d.ts","sourceRoot":"","sources":["../../../src/client/handlers/UIFriendEventHandler.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,WAAW,EAAE,MAAM,OAAO,CAAC;AACjD,OAAO,EAAE,gBAAgB,EAAE,MAAM,OAAO,CAAC;AACzC,OAAO,EAAE,cAAc,EAAE,MAAM,OAAO,CAAC;AACvC,OAAO,EAAE,gBAAgB,EAAE,MAAM,OAAO,CAAC;AACzC,OAAO,EAAE,cAAc,EAAE,MAAM,OAAO,CAAC;AACvC,OAAO,EAAE,oBAAoB,EAAE,MAAM,4BAA4B,CAAC;AAGlE,qBAAa,oBAAoB;IAEzB,OAAO,CAAC,UAAU;IAClB,OAAO,CAAC,cAAc;IACtB,OAAO,CAAC,gBAAgB;IACxB,OAAO,CAAC,cAAc;IACtB,OAAO,CAAC,oBAAoB,CAAC;gBAJrB,UAAU,EAAE,gBAAgB,EAC5B,cAAc,EAAE,cAAc,EAC9B,gBAAgB,EAAE,gBAAgB,EAClC,cAAc,EAAE,cAAc,EAC9B,oBAAoB,CAAC,EAAE,oBAAoB,YAAA;IAGjD,WAAW,CAAC,KAAK,EAAE,WAAW,GAAG,OAAO,CAAC,WAAW,CAAC;CAsB9D"}
@@ -1,27 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.UIFriendEventHandler = void 0;
4
- const DomainEvents_1 = require("../../common/DomainEvents");
5
- class UIFriendEventHandler {
6
- constructor(modelStore, userModelStore, friendEventStore, userEventStore, activityEventHandler) {
7
- this.modelStore = modelStore;
8
- this.userModelStore = userModelStore;
9
- this.friendEventStore = friendEventStore;
10
- this.userEventStore = userEventStore;
11
- this.activityEventHandler = activityEventHandler;
12
- }
13
- async handleEvent(event) {
14
- const eventType = event.constructor.name;
15
- if (!(0, DomainEvents_1.isValidFriendEventType)(eventType)) {
16
- throw new Error(`Unknown friend event type: ${eventType}`);
17
- }
18
- const existingModel = await this.modelStore.getByStreamIdWhereDeletedIsFalse(event.streamId);
19
- const updatedModel = event.apply(existingModel);
20
- await this.modelStore.save(updatedModel);
21
- if (this.activityEventHandler) {
22
- await this.activityEventHandler.createActivityLog(event, existingModel, updatedModel);
23
- }
24
- return updatedModel;
25
- }
26
- }
27
- exports.UIFriendEventHandler = UIFriendEventHandler;
@@ -1,18 +0,0 @@
1
- import { GroupModel, GroupEvent } from "../..";
2
- import { GroupModelStore } from "../..";
3
- import { FriendModelStore } from "../..";
4
- import { UserModelStore } from "../..";
5
- import { GroupEventStore } from "../..";
6
- import { FriendEventStore } from "../..";
7
- import { ActivityEventHandler } from "../../ActivityEventHandler";
8
- export declare class UIGroupEventHandler {
9
- private modelStore;
10
- private friendModelStore;
11
- private userModelStore;
12
- private groupEventStore;
13
- private friendEventStore;
14
- private activityEventHandler?;
15
- constructor(modelStore: GroupModelStore, friendModelStore: FriendModelStore, userModelStore: UserModelStore, groupEventStore: GroupEventStore, friendEventStore: FriendEventStore, activityEventHandler?: ActivityEventHandler | undefined);
16
- handleEvent(event: GroupEvent): Promise<GroupModel>;
17
- }
18
- //# sourceMappingURL=UIGroupEventHandler.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"UIGroupEventHandler.d.ts","sourceRoot":"","sources":["../../../src/client/handlers/UIGroupEventHandler.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,UAAU,EAAE,MAAM,OAAO,CAAC;AAC/C,OAAO,EAAE,eAAe,EAAE,MAAM,OAAO,CAAC;AACxC,OAAO,EAAE,gBAAgB,EAAE,MAAM,OAAO,CAAC;AACzC,OAAO,EAAE,cAAc,EAAE,MAAM,OAAO,CAAC;AACvC,OAAO,EAAE,eAAe,EAAE,MAAM,OAAO,CAAC;AACxC,OAAO,EAAE,gBAAgB,EAAE,MAAM,OAAO,CAAC;AACzC,OAAO,EAAE,oBAAoB,EAAE,MAAM,4BAA4B,CAAC;AAGlE,qBAAa,mBAAmB;IAExB,OAAO,CAAC,UAAU;IAClB,OAAO,CAAC,gBAAgB;IACxB,OAAO,CAAC,cAAc;IACtB,OAAO,CAAC,eAAe;IACvB,OAAO,CAAC,gBAAgB;IACxB,OAAO,CAAC,oBAAoB,CAAC;gBALrB,UAAU,EAAE,eAAe,EAC3B,gBAAgB,EAAE,gBAAgB,EAClC,cAAc,EAAE,cAAc,EAC9B,eAAe,EAAE,eAAe,EAChC,gBAAgB,EAAE,gBAAgB,EAClC,oBAAoB,CAAC,EAAE,oBAAoB,YAAA;IAGjD,WAAW,CAAC,KAAK,EAAE,UAAU,GAAG,OAAO,CAAC,UAAU,CAAC;CAsB5D"}
@@ -1,28 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.UIGroupEventHandler = void 0;
4
- const DomainEvents_1 = require("../../common/DomainEvents");
5
- class UIGroupEventHandler {
6
- constructor(modelStore, friendModelStore, userModelStore, groupEventStore, friendEventStore, activityEventHandler) {
7
- this.modelStore = modelStore;
8
- this.friendModelStore = friendModelStore;
9
- this.userModelStore = userModelStore;
10
- this.groupEventStore = groupEventStore;
11
- this.friendEventStore = friendEventStore;
12
- this.activityEventHandler = activityEventHandler;
13
- }
14
- async handleEvent(event) {
15
- const eventType = event.constructor.name;
16
- if (!(0, DomainEvents_1.isValidGroupEventType)(eventType)) {
17
- throw new Error(`Unknown group event type: ${eventType}`);
18
- }
19
- const existingModel = await this.modelStore.getByStreamIdWhereDeletedIsFalse(event.streamId);
20
- const updatedModel = event.apply(existingModel);
21
- await this.modelStore.save(updatedModel);
22
- if (this.activityEventHandler) {
23
- await this.activityEventHandler.createActivityLog(event, existingModel, updatedModel);
24
- }
25
- return updatedModel;
26
- }
27
- }
28
- exports.UIGroupEventHandler = UIGroupEventHandler;
@@ -1,18 +0,0 @@
1
- import { GroupTransactionModel, GroupTransactionEvent } from "../..";
2
- import { GroupTransactionModelStore } from "../..";
3
- import { GroupTransactionEventStore } from "../..";
4
- import { GroupModelStore } from "../..";
5
- import { TransactionEventStore } from "../..";
6
- import { TransactionModelStore } from "../..";
7
- import { ActivityEventHandler } from "../../ActivityEventHandler";
8
- export declare class UIGroupTransactionEventHandler {
9
- private modelStore;
10
- private eventStore;
11
- private groupModelStore;
12
- private transactionEventStore;
13
- private transactionModelStore;
14
- private activityEventHandler?;
15
- constructor(modelStore: GroupTransactionModelStore, eventStore: GroupTransactionEventStore, groupModelStore: GroupModelStore, transactionEventStore: TransactionEventStore, transactionModelStore: TransactionModelStore, activityEventHandler?: ActivityEventHandler | undefined);
16
- handleEvent(event: GroupTransactionEvent): Promise<GroupTransactionModel>;
17
- }
18
- //# sourceMappingURL=UIGroupTransactionEventHandler.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"UIGroupTransactionEventHandler.d.ts","sourceRoot":"","sources":["../../../src/client/handlers/UIGroupTransactionEventHandler.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,qBAAqB,EAAE,qBAAqB,EAAE,MAAM,OAAO,CAAC;AACrE,OAAO,EAAE,0BAA0B,EAAE,MAAM,OAAO,CAAC;AACnD,OAAO,EAAE,0BAA0B,EAAE,MAAM,OAAO,CAAC;AACnD,OAAO,EAAE,eAAe,EAAE,MAAM,OAAO,CAAC;AACxC,OAAO,EAAE,qBAAqB,EAAE,MAAM,OAAO,CAAC;AAC9C,OAAO,EAAE,qBAAqB,EAAE,MAAM,OAAO,CAAC;AAC9C,OAAO,EAAE,oBAAoB,EAAE,MAAM,4BAA4B,CAAC;AAGlE,qBAAa,8BAA8B;IAEnC,OAAO,CAAC,UAAU;IAClB,OAAO,CAAC,UAAU;IAClB,OAAO,CAAC,eAAe;IACvB,OAAO,CAAC,qBAAqB;IAC7B,OAAO,CAAC,qBAAqB;IAC7B,OAAO,CAAC,oBAAoB,CAAC;gBALrB,UAAU,EAAE,0BAA0B,EACtC,UAAU,EAAE,0BAA0B,EACtC,eAAe,EAAE,eAAe,EAChC,qBAAqB,EAAE,qBAAqB,EAC5C,qBAAqB,EAAE,qBAAqB,EAC5C,oBAAoB,CAAC,EAAE,oBAAoB,YAAA;IAGjD,WAAW,CACb,KAAK,EAAE,qBAAqB,GAC7B,OAAO,CAAC,qBAAqB,CAAC;CA0BpC"}
@@ -1,28 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.UIGroupTransactionEventHandler = void 0;
4
- const DomainEvents_1 = require("../../common/DomainEvents");
5
- class UIGroupTransactionEventHandler {
6
- constructor(modelStore, eventStore, groupModelStore, transactionEventStore, transactionModelStore, activityEventHandler) {
7
- this.modelStore = modelStore;
8
- this.eventStore = eventStore;
9
- this.groupModelStore = groupModelStore;
10
- this.transactionEventStore = transactionEventStore;
11
- this.transactionModelStore = transactionModelStore;
12
- this.activityEventHandler = activityEventHandler;
13
- }
14
- async handleEvent(event) {
15
- const eventType = event.constructor.name;
16
- if (!(0, DomainEvents_1.isValidGroupTransactionEventType)(eventType)) {
17
- throw new Error(`Unknown group transaction event type: ${eventType}`);
18
- }
19
- const existingModel = await this.modelStore.getByStreamIdWhereDeletedIsFalse(event.streamId);
20
- const updatedModel = event.apply(existingModel);
21
- await this.modelStore.save(updatedModel);
22
- if (this.activityEventHandler) {
23
- await this.activityEventHandler.createActivityLog(event, existingModel, updatedModel);
24
- }
25
- return updatedModel;
26
- }
27
- }
28
- exports.UIGroupTransactionEventHandler = UIGroupTransactionEventHandler;
@@ -1,14 +0,0 @@
1
- import { TransactionModel, TransactionEvent } from "../..";
2
- import { TransactionModelStore } from "../..";
3
- import { TransactionEventStore } from "../..";
4
- import { UserModelStore } from "../..";
5
- import { ActivityEventHandler } from "../../ActivityEventHandler";
6
- export declare class UITransactionEventHandler {
7
- private modelStore;
8
- private eventStore;
9
- private txUserModelStore;
10
- private activityEventHandler?;
11
- constructor(modelStore: TransactionModelStore, eventStore: TransactionEventStore, txUserModelStore: UserModelStore, activityEventHandler?: ActivityEventHandler | undefined);
12
- handleEvent(event: TransactionEvent): Promise<TransactionModel>;
13
- }
14
- //# sourceMappingURL=UITransactionEventHandler.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"UITransactionEventHandler.d.ts","sourceRoot":"","sources":["../../../src/client/handlers/UITransactionEventHandler.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAE,gBAAgB,EAAE,MAAM,OAAO,CAAC;AAC3D,OAAO,EAAE,qBAAqB,EAAE,MAAM,OAAO,CAAC;AAC9C,OAAO,EAAE,qBAAqB,EAAE,MAAM,OAAO,CAAC;AAC9C,OAAO,EAAE,cAAc,EAAE,MAAM,OAAO,CAAC;AACvC,OAAO,EAAE,oBAAoB,EAAE,MAAM,4BAA4B,CAAC;AAGlE,qBAAa,yBAAyB;IAE9B,OAAO,CAAC,UAAU;IAClB,OAAO,CAAC,UAAU;IAClB,OAAO,CAAC,gBAAgB;IACxB,OAAO,CAAC,oBAAoB,CAAC;gBAHrB,UAAU,EAAE,qBAAqB,EACjC,UAAU,EAAE,qBAAqB,EACjC,gBAAgB,EAAE,cAAc,EAChC,oBAAoB,CAAC,EAAE,oBAAoB,YAAA;IAGjD,WAAW,CAAC,KAAK,EAAE,gBAAgB,GAAG,OAAO,CAAC,gBAAgB,CAAC;CAsBxE"}
@@ -1,26 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.UITransactionEventHandler = void 0;
4
- const DomainEvents_1 = require("../../common/DomainEvents");
5
- class UITransactionEventHandler {
6
- constructor(modelStore, eventStore, txUserModelStore, activityEventHandler) {
7
- this.modelStore = modelStore;
8
- this.eventStore = eventStore;
9
- this.txUserModelStore = txUserModelStore;
10
- this.activityEventHandler = activityEventHandler;
11
- }
12
- async handleEvent(event) {
13
- const eventType = event.constructor.name;
14
- if (!(0, DomainEvents_1.isValidTransactionEventType)(eventType)) {
15
- throw new Error(`Unknown transaction event type: ${eventType}`);
16
- }
17
- const existingModel = await this.modelStore.getByStreamIdWhereDeletedIsFalse(event.streamId);
18
- const model = event.apply(existingModel);
19
- await this.modelStore.save(model);
20
- if (this.activityEventHandler) {
21
- await this.activityEventHandler.createActivityLog(event, existingModel, model);
22
- }
23
- return model;
24
- }
25
- }
26
- exports.UITransactionEventHandler = UITransactionEventHandler;
@@ -1,12 +0,0 @@
1
- import { UserModel, UserEvent } from "../..";
2
- import { UserModelStore } from "../..";
3
- import { UserEventStore } from "../..";
4
- import { ActivityEventHandler } from "../../ActivityEventHandler";
5
- export declare class UIUserEventHandler {
6
- private modelStore;
7
- private eventStore;
8
- private activityEventHandler?;
9
- constructor(modelStore: UserModelStore, eventStore: UserEventStore, activityEventHandler?: ActivityEventHandler | undefined);
10
- handleEvent(event: UserEvent): Promise<UserModel>;
11
- }
12
- //# sourceMappingURL=UIUserEventHandler.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"UIUserEventHandler.d.ts","sourceRoot":"","sources":["../../../src/client/handlers/UIUserEventHandler.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AAC7C,OAAO,EAAE,cAAc,EAAE,MAAM,OAAO,CAAC;AACvC,OAAO,EAAE,cAAc,EAAE,MAAM,OAAO,CAAC;AACvC,OAAO,EAAE,oBAAoB,EAAE,MAAM,4BAA4B,CAAC;AAGlE,qBAAa,kBAAkB;IAEvB,OAAO,CAAC,UAAU;IAClB,OAAO,CAAC,UAAU;IAClB,OAAO,CAAC,oBAAoB,CAAC;gBAFrB,UAAU,EAAE,cAAc,EAC1B,UAAU,EAAE,cAAc,EAC1B,oBAAoB,CAAC,EAAE,oBAAoB,YAAA;IAGjD,WAAW,CAAC,KAAK,EAAE,SAAS,GAAG,OAAO,CAAC,SAAS,CAAC;CA8B1D"}
@@ -1,29 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.UIUserEventHandler = void 0;
4
- const DomainEvents_1 = require("../../common/DomainEvents");
5
- class UIUserEventHandler {
6
- constructor(modelStore, eventStore, activityEventHandler) {
7
- this.modelStore = modelStore;
8
- this.eventStore = eventStore;
9
- this.activityEventHandler = activityEventHandler;
10
- }
11
- async handleEvent(event) {
12
- const eventType = event.constructor.name;
13
- if (!(0, DomainEvents_1.isValidUserEventType)(eventType)) {
14
- throw new Error(`Unknown user event type: ${eventType}`);
15
- }
16
- const existingModel = await this.modelStore.getByStreamIdWhereDeletedIsFalse(event.streamId);
17
- if (!existingModel?.uid) {
18
- throw new Error(`User model not found or missing uid for streamId: ${event.streamId}`);
19
- }
20
- await this.eventStore.addEvent(event);
21
- const updatedModel = event.apply(existingModel);
22
- await this.modelStore.save(updatedModel);
23
- if (this.activityEventHandler) {
24
- await this.activityEventHandler.createActivityLog(event, existingModel, updatedModel);
25
- }
26
- return updatedModel;
27
- }
28
- }
29
- exports.UIUserEventHandler = UIUserEventHandler;
@@ -1,6 +0,0 @@
1
- import { UserModel } from "..";
2
- export declare function getUserEventPath(userModel: UserModel | undefined, recipientStreamId: string): {
3
- path: string;
4
- userId: string;
5
- };
6
- //# sourceMappingURL=userPathUtils.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"userPathUtils.d.ts","sourceRoot":"","sources":["../../src/utils/userPathUtils.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,IAAI,CAAC;AAE/B,wBAAgB,gBAAgB,CAC5B,SAAS,EAAE,SAAS,GAAG,SAAS,EAChC,iBAAiB,EAAE,MAAM,GAC1B;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,MAAM,CAAA;CAAE,CAUlC"}
@@ -1,16 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.getUserEventPath = getUserEventPath;
4
- function getUserEventPath(userModel, recipientStreamId) {
5
- if (userModel) {
6
- if (userModel.uid) {
7
- return { path: "users", userId: userModel.uid };
8
- }
9
- else {
10
- return { path: "placeholders", userId: userModel.streamId };
11
- }
12
- }
13
- else {
14
- return { path: "placeholders", userId: recipientStreamId };
15
- }
16
- }