@zeeshan60/event-processor 1.0.12 → 1.0.14
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.
- package/dist/ActivityEventHandler.d.ts +5 -4
- package/dist/ActivityEventHandler.d.ts.map +1 -1
- package/dist/ActivityEventHandler.js +14 -1
- package/dist/ActivityLogEvents.d.ts +4 -2
- package/dist/ActivityLogEvents.d.ts.map +1 -1
- package/dist/ActivityLogEvents.js +1 -0
- package/dist/EventProcessorSDK.d.ts +47 -18
- package/dist/EventProcessorSDK.d.ts.map +1 -1
- package/dist/EventProcessorSDK.js +90 -5
- package/dist/FriendEventHandler.d.ts +5 -12
- package/dist/FriendEventHandler.d.ts.map +1 -1
- package/dist/FriendEventHandler.js +71 -60
- package/dist/FriendEvents.d.ts +13 -3
- package/dist/FriendEvents.d.ts.map +1 -1
- package/dist/FriendEvents.js +16 -7
- package/dist/GroupEventHandler.d.ts +8 -7
- package/dist/GroupEventHandler.d.ts.map +1 -1
- package/dist/GroupEventHandler.js +107 -26
- package/dist/GroupEvents.d.ts +15 -3
- package/dist/GroupEvents.d.ts.map +1 -1
- package/dist/GroupEvents.js +25 -13
- package/dist/GroupTransactionEventHandler.d.ts +8 -7
- package/dist/GroupTransactionEventHandler.d.ts.map +1 -1
- package/dist/GroupTransactionEventHandler.js +69 -24
- package/dist/GroupTransactionEvents.d.ts +22 -4
- package/dist/GroupTransactionEvents.d.ts.map +1 -1
- package/dist/GroupTransactionEvents.js +39 -21
- package/dist/ModelChangeEmitter.d.ts +15 -0
- package/dist/ModelChangeEmitter.d.ts.map +1 -0
- package/dist/ModelChangeEmitter.js +31 -0
- package/dist/TransactionEventHandler.d.ts +3 -5
- package/dist/TransactionEventHandler.d.ts.map +1 -1
- package/dist/TransactionEventHandler.js +49 -15
- package/dist/TransactionEvents.d.ts +24 -8
- package/dist/TransactionEvents.d.ts.map +1 -1
- package/dist/TransactionEvents.js +38 -22
- package/dist/UserEventHandler.d.ts +4 -11
- package/dist/UserEventHandler.d.ts.map +1 -1
- package/dist/UserEventHandler.js +86 -61
- package/dist/UserEvents.d.ts +20 -3
- package/dist/UserEvents.d.ts.map +1 -1
- package/dist/UserEvents.js +53 -18
- package/dist/__tests__/test-helpers/IMActivityLogEventStore.d.ts +3 -3
- package/dist/__tests__/test-helpers/IMActivityLogEventStore.d.ts.map +1 -1
- package/dist/__tests__/test-helpers/IMActivityLogEventStore.js +1 -3
- package/dist/__tests__/test-helpers/IMActivityLogModelStore.d.ts +3 -3
- package/dist/__tests__/test-helpers/IMActivityLogModelStore.d.ts.map +1 -1
- package/dist/__tests__/test-helpers/IMActivityLogModelStore.js +1 -3
- package/dist/__tests__/test-helpers/IMFriendEventStore.d.ts +3 -3
- package/dist/__tests__/test-helpers/IMFriendEventStore.d.ts.map +1 -1
- package/dist/__tests__/test-helpers/IMFriendEventStore.js +1 -3
- package/dist/__tests__/test-helpers/IMFriendModelStore.d.ts +4 -3
- package/dist/__tests__/test-helpers/IMFriendModelStore.d.ts.map +1 -1
- package/dist/__tests__/test-helpers/IMFriendModelStore.js +10 -3
- package/dist/__tests__/test-helpers/IMGroupEventStore.d.ts +3 -3
- package/dist/__tests__/test-helpers/IMGroupEventStore.d.ts.map +1 -1
- package/dist/__tests__/test-helpers/IMGroupEventStore.js +1 -3
- package/dist/__tests__/test-helpers/IMGroupModelStore.d.ts +3 -3
- package/dist/__tests__/test-helpers/IMGroupModelStore.d.ts.map +1 -1
- package/dist/__tests__/test-helpers/IMGroupModelStore.js +1 -3
- package/dist/__tests__/test-helpers/IMGroupTransactionEventStore.d.ts +3 -3
- package/dist/__tests__/test-helpers/IMGroupTransactionEventStore.d.ts.map +1 -1
- package/dist/__tests__/test-helpers/IMGroupTransactionEventStore.js +1 -3
- package/dist/__tests__/test-helpers/IMGroupTransactionModelStore.d.ts +3 -3
- package/dist/__tests__/test-helpers/IMGroupTransactionModelStore.d.ts.map +1 -1
- package/dist/__tests__/test-helpers/IMGroupTransactionModelStore.js +1 -3
- package/dist/__tests__/test-helpers/IMTransactionEventStore.d.ts +3 -3
- package/dist/__tests__/test-helpers/IMTransactionEventStore.d.ts.map +1 -1
- package/dist/__tests__/test-helpers/IMTransactionEventStore.js +1 -3
- package/dist/__tests__/test-helpers/IMTransactionModelStore.d.ts +3 -3
- package/dist/__tests__/test-helpers/IMTransactionModelStore.d.ts.map +1 -1
- package/dist/__tests__/test-helpers/IMTransactionModelStore.js +1 -3
- package/dist/__tests__/test-helpers/IMUserEventStore.d.ts +3 -3
- package/dist/__tests__/test-helpers/IMUserEventStore.d.ts.map +1 -1
- package/dist/__tests__/test-helpers/IMUserEventStore.js +1 -3
- package/dist/__tests__/test-helpers/IMUserModelStore.d.ts +3 -3
- package/dist/__tests__/test-helpers/IMUserModelStore.d.ts.map +1 -1
- package/dist/__tests__/test-helpers/IMUserModelStore.js +1 -3
- package/dist/__tests__/test-helpers/MockFirebaseAdapter.d.ts +2 -1
- package/dist/__tests__/test-helpers/MockFirebaseAdapter.d.ts.map +1 -1
- package/dist/__tests__/test-helpers/MockFirebaseAdapter.js +5 -1
- package/dist/client/controllers/FriendController.d.ts +13 -0
- package/dist/client/controllers/FriendController.d.ts.map +1 -0
- package/dist/client/controllers/FriendController.js +133 -0
- package/dist/client/controllers/UserController.d.ts +6 -5
- package/dist/client/controllers/UserController.d.ts.map +1 -1
- package/dist/client/controllers/UserController.js +89 -22
- package/dist/client/handlers/UIEventHandler.d.ts +4 -22
- package/dist/client/handlers/UIEventHandler.d.ts.map +1 -1
- package/dist/client/handlers/UIEventHandler.js +59 -38
- package/dist/client/handlers/UIFriendEventHandler.d.ts +6 -6
- package/dist/client/handlers/UIFriendEventHandler.d.ts.map +1 -1
- package/dist/client/handlers/UIGroupEventHandler.d.ts +7 -7
- package/dist/client/handlers/UIGroupEventHandler.d.ts.map +1 -1
- package/dist/client/handlers/UIGroupTransactionEventHandler.d.ts +7 -7
- package/dist/client/handlers/UIGroupTransactionEventHandler.d.ts.map +1 -1
- package/dist/client/handlers/UITransactionEventHandler.d.ts +5 -5
- package/dist/client/handlers/UITransactionEventHandler.d.ts.map +1 -1
- package/dist/client/handlers/UIUserEventHandler.d.ts +4 -4
- package/dist/client/handlers/UIUserEventHandler.d.ts.map +1 -1
- package/dist/common/DomainEvents.d.ts +1 -1
- package/dist/common/DomainEvents.d.ts.map +1 -1
- package/dist/common/DomainEvents.js +37 -37
- package/dist/common/Event.d.ts +3 -2
- package/dist/common/Event.d.ts.map +1 -1
- package/dist/common/Model.d.ts.map +1 -1
- package/dist/common/index.d.ts +2 -2
- package/dist/contracts/common/index.d.ts.map +1 -1
- package/dist/contracts/expenses/index.d.ts.map +1 -1
- package/dist/contracts/friends/index.d.ts.map +1 -1
- package/dist/contracts/groups/index.d.ts.map +1 -1
- package/dist/contracts/index.d.ts +1 -0
- package/dist/contracts/index.d.ts.map +1 -1
- package/dist/contracts/index.js +1 -0
- package/dist/contracts/shared/index.d.ts.map +1 -1
- package/dist/contracts/transactions/index.d.ts.map +1 -1
- package/dist/contracts/users/index.d.ts +15 -0
- package/dist/contracts/users/index.d.ts.map +1 -0
- package/dist/contracts/users/index.js +2 -0
- package/dist/converters/eventConverter.d.ts +3 -3
- package/dist/converters/eventConverter.d.ts.map +1 -1
- package/dist/converters/eventConverter.js +93 -51
- package/dist/events.d.ts +29 -29
- package/dist/events.d.ts.map +1 -1
- package/dist/index.d.ts +15 -13
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +17 -4
- package/dist/store/ActivityLogEventStore.d.ts +3 -3
- package/dist/store/ActivityLogEventStore.d.ts.map +1 -1
- package/dist/store/ActivityLogEventStore.js +0 -4
- package/dist/store/ActivityLogModelStore.d.ts +6 -6
- package/dist/store/ActivityLogModelStore.d.ts.map +1 -1
- package/dist/store/ActivityLogModelStore.js +0 -5
- package/dist/store/FriendEventStore.d.ts +3 -3
- package/dist/store/FriendEventStore.d.ts.map +1 -1
- package/dist/store/FriendEventStore.js +0 -4
- package/dist/store/FriendModelStore.d.ts +11 -10
- package/dist/store/FriendModelStore.d.ts.map +1 -1
- package/dist/store/FriendModelStore.js +0 -5
- package/dist/store/GroupEventStore.d.ts +3 -3
- package/dist/store/GroupEventStore.d.ts.map +1 -1
- package/dist/store/GroupEventStore.js +0 -4
- package/dist/store/GroupModelStore.d.ts +8 -8
- package/dist/store/GroupModelStore.d.ts.map +1 -1
- package/dist/store/GroupModelStore.js +0 -5
- package/dist/store/GroupTransactionEventStore.d.ts +3 -3
- package/dist/store/GroupTransactionEventStore.d.ts.map +1 -1
- package/dist/store/GroupTransactionEventStore.js +0 -4
- package/dist/store/GroupTransactionModelStore.d.ts +8 -8
- package/dist/store/GroupTransactionModelStore.d.ts.map +1 -1
- package/dist/store/GroupTransactionModelStore.js +0 -5
- package/dist/store/ModelStore.d.ts +5 -5
- package/dist/store/ModelStore.d.ts.map +1 -1
- package/dist/store/ModelStore.js +0 -4
- package/dist/store/TransactionEventStore.d.ts +3 -3
- package/dist/store/TransactionEventStore.d.ts.map +1 -1
- package/dist/store/TransactionEventStore.js +0 -4
- package/dist/store/TransactionModelStore.d.ts +8 -8
- package/dist/store/TransactionModelStore.d.ts.map +1 -1
- package/dist/store/TransactionModelStore.js +0 -5
- package/dist/store/UserEventStore.d.ts +3 -3
- package/dist/store/UserEventStore.d.ts.map +1 -1
- package/dist/store/UserEventStore.js +0 -4
- package/dist/store/UserModelStore.d.ts +9 -9
- package/dist/store/UserModelStore.d.ts.map +1 -1
- package/dist/store/UserModelStore.js +0 -5
- package/dist/utils/splitTypeUtils.d.ts +1 -1
- package/dist/utils/splitTypeUtils.d.ts.map +1 -1
- package/dist/utils/userPathUtils.d.ts +1 -1
- package/dist/utils/userPathUtils.d.ts.map +1 -1
- package/dist/utils/userPathUtils.js +3 -3
- package/package.json +1 -1
- package/dist/adapters/FirebaseAdminAdapter.d.ts +0 -8
- package/dist/adapters/FirebaseAdminAdapter.d.ts.map +0 -1
- package/dist/adapters/FirebaseAdminAdapter.js +0 -21
- package/dist/adapters/FirebaseClientAdapter.d.ts +0 -8
- package/dist/adapters/FirebaseClientAdapter.d.ts.map +0 -1
- package/dist/adapters/FirebaseClientAdapter.js +0 -22
- package/dist/client/handlers/UIActivityEventHandler.d.ts +0 -12
- package/dist/client/handlers/UIActivityEventHandler.d.ts.map +0 -1
- package/dist/client/handlers/UIActivityEventHandler.js +0 -14
- package/dist/common/EventBus.d.ts +0 -12
- package/dist/common/EventBus.d.ts.map +0 -1
- package/dist/common/EventBus.js +0 -26
- package/dist/common/EventBusSingleton.d.ts +0 -4
- package/dist/common/EventBusSingleton.d.ts.map +0 -1
- package/dist/common/EventBusSingleton.js +0 -18
- package/dist/config/environment.d.ts +0 -25
- package/dist/config/environment.d.ts.map +0 -1
- package/dist/config/environment.js +0 -77
- package/dist/controllers/UIEventHandler.d.ts +0 -25
- package/dist/controllers/UIEventHandler.d.ts.map +0 -1
- package/dist/controllers/UIEventHandler.js +0 -50
- package/dist/controllers/UserController.d.ts +0 -9
- package/dist/controllers/UserController.d.ts.map +0 -1
- package/dist/controllers/UserController.js +0 -36
|
@@ -1,77 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.eventProcessorEnv = exports.EventProcessorSource = void 0;
|
|
4
|
-
exports.setEventProcessorSource = setEventProcessorSource;
|
|
5
|
-
exports.getEventProcessorSource = getEventProcessorSource;
|
|
6
|
-
exports.isGCFun = isGCFun;
|
|
7
|
-
exports.isClient = isClient;
|
|
8
|
-
exports.isUnknown = isUnknown;
|
|
9
|
-
exports.resetEventProcessorSource = resetEventProcessorSource;
|
|
10
|
-
var EventProcessorSource;
|
|
11
|
-
(function (EventProcessorSource) {
|
|
12
|
-
EventProcessorSource["GOOGLE_CLOUD_FUNCTION"] = "GOOGLE_CLOUD_FUNCTION";
|
|
13
|
-
EventProcessorSource["CLIENT"] = "CLIENT";
|
|
14
|
-
EventProcessorSource["UNKNOWN"] = "UNKNOWN";
|
|
15
|
-
})(EventProcessorSource || (exports.EventProcessorSource = EventProcessorSource = {}));
|
|
16
|
-
class EventProcessorEnvironment {
|
|
17
|
-
constructor() {
|
|
18
|
-
this.source = EventProcessorSource.UNKNOWN;
|
|
19
|
-
this.initializeFromEnv();
|
|
20
|
-
}
|
|
21
|
-
initializeFromEnv() {
|
|
22
|
-
// Check if running in Node.js environment (not browser)
|
|
23
|
-
if (typeof process !== 'undefined' && process.env) {
|
|
24
|
-
const envSource = process.env.EVENT_PROCESSOR_SOURCE;
|
|
25
|
-
if (envSource === EventProcessorSource.GOOGLE_CLOUD_FUNCTION) {
|
|
26
|
-
this.source = EventProcessorSource.GOOGLE_CLOUD_FUNCTION;
|
|
27
|
-
}
|
|
28
|
-
else if (envSource === EventProcessorSource.CLIENT) {
|
|
29
|
-
this.source = EventProcessorSource.CLIENT;
|
|
30
|
-
}
|
|
31
|
-
else {
|
|
32
|
-
this.source = EventProcessorSource.UNKNOWN;
|
|
33
|
-
}
|
|
34
|
-
}
|
|
35
|
-
else {
|
|
36
|
-
// Browser environment - default to CLIENT
|
|
37
|
-
this.source = EventProcessorSource.CLIENT;
|
|
38
|
-
}
|
|
39
|
-
}
|
|
40
|
-
setSource(source) {
|
|
41
|
-
this.source = source;
|
|
42
|
-
}
|
|
43
|
-
getSource() {
|
|
44
|
-
return this.source;
|
|
45
|
-
}
|
|
46
|
-
isGCFun() {
|
|
47
|
-
return this.source === EventProcessorSource.GOOGLE_CLOUD_FUNCTION;
|
|
48
|
-
}
|
|
49
|
-
isClient() {
|
|
50
|
-
return this.source === EventProcessorSource.CLIENT;
|
|
51
|
-
}
|
|
52
|
-
isUnknown() {
|
|
53
|
-
return this.source === EventProcessorSource.UNKNOWN;
|
|
54
|
-
}
|
|
55
|
-
reset() {
|
|
56
|
-
this.initializeFromEnv();
|
|
57
|
-
}
|
|
58
|
-
}
|
|
59
|
-
exports.eventProcessorEnv = new EventProcessorEnvironment();
|
|
60
|
-
function setEventProcessorSource(source) {
|
|
61
|
-
exports.eventProcessorEnv.setSource(source);
|
|
62
|
-
}
|
|
63
|
-
function getEventProcessorSource() {
|
|
64
|
-
return exports.eventProcessorEnv.getSource();
|
|
65
|
-
}
|
|
66
|
-
function isGCFun() {
|
|
67
|
-
return exports.eventProcessorEnv.isGCFun();
|
|
68
|
-
}
|
|
69
|
-
function isClient() {
|
|
70
|
-
return exports.eventProcessorEnv.isClient();
|
|
71
|
-
}
|
|
72
|
-
function isUnknown() {
|
|
73
|
-
return exports.eventProcessorEnv.isUnknown();
|
|
74
|
-
}
|
|
75
|
-
function resetEventProcessorSource() {
|
|
76
|
-
exports.eventProcessorEnv.reset();
|
|
77
|
-
}
|
|
@@ -1,25 +0,0 @@
|
|
|
1
|
-
import { UserModelStore } from '../store/UserModelStore';
|
|
2
|
-
interface FirestoreTimestamp {
|
|
3
|
-
toDate(): Date;
|
|
4
|
-
seconds: number;
|
|
5
|
-
nanoseconds: number;
|
|
6
|
-
}
|
|
7
|
-
interface ClientFirestoreEventData {
|
|
8
|
-
id: string;
|
|
9
|
-
eventType: string;
|
|
10
|
-
streamId: string;
|
|
11
|
-
version: number;
|
|
12
|
-
createdAt: FirestoreTimestamp | Date;
|
|
13
|
-
createdBy: string;
|
|
14
|
-
systemGenerated?: boolean;
|
|
15
|
-
[key: string]: any;
|
|
16
|
-
}
|
|
17
|
-
export declare class UIEventHandler {
|
|
18
|
-
private userModelStore;
|
|
19
|
-
constructor(userModelStore: UserModelStore);
|
|
20
|
-
handleFirestoreEvent(eventData: ClientFirestoreEventData): Promise<void>;
|
|
21
|
-
private firestoreToEvent;
|
|
22
|
-
private toDate;
|
|
23
|
-
}
|
|
24
|
-
export {};
|
|
25
|
-
//# sourceMappingURL=UIEventHandler.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"UIEventHandler.d.ts","sourceRoot":"","sources":["../../src/controllers/UIEventHandler.ts"],"names":[],"mappings":"AACA,OAAO,EAAC,cAAc,EAAC,MAAM,yBAAyB,CAAC;AAGvD,UAAU,kBAAkB;IACxB,MAAM,IAAI,IAAI,CAAC;IACf,OAAO,EAAE,MAAM,CAAC;IAChB,WAAW,EAAE,MAAM,CAAC;CACvB;AAED,UAAU,wBAAwB;IAC9B,EAAE,EAAE,MAAM,CAAC;IACX,SAAS,EAAE,MAAM,CAAC;IAClB,QAAQ,EAAE,MAAM,CAAC;IACjB,OAAO,EAAE,MAAM,CAAC;IAChB,SAAS,EAAE,kBAAkB,GAAG,IAAI,CAAC;IACrC,SAAS,EAAE,MAAM,CAAC;IAClB,eAAe,CAAC,EAAE,OAAO,CAAC;IAC1B,CAAC,GAAG,EAAE,MAAM,GAAG,GAAG,CAAC;CACtB;AAED,qBAAa,cAAc;IAEnB,OAAO,CAAC,cAAc;gBAAd,cAAc,EAAE,cAAc;IAGpC,oBAAoB,CAAC,SAAS,EAAE,wBAAwB,GAAG,OAAO,CAAC,IAAI,CAAC;IAW9E,OAAO,CAAC,gBAAgB;IAwBxB,OAAO,CAAC,MAAM;CASjB"}
|
|
@@ -1,50 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.UIEventHandler = void 0;
|
|
4
|
-
const __1 = require("..");
|
|
5
|
-
const EventBusSingleton_1 = require("../common/EventBusSingleton");
|
|
6
|
-
class UIEventHandler {
|
|
7
|
-
constructor(userModelStore) {
|
|
8
|
-
this.userModelStore = userModelStore;
|
|
9
|
-
}
|
|
10
|
-
async handleFirestoreEvent(eventData) {
|
|
11
|
-
const event = this.firestoreToEvent(eventData);
|
|
12
|
-
if (event instanceof __1.UserCreated) {
|
|
13
|
-
const existingModel = await this.userModelStore.getByStreamIdWhereDeletedIsFalse(event.streamId);
|
|
14
|
-
const updatedModel = event.apply(existingModel);
|
|
15
|
-
await this.userModelStore.save(updatedModel);
|
|
16
|
-
(0, EventBusSingleton_1.getEventBus)().publish(event);
|
|
17
|
-
}
|
|
18
|
-
}
|
|
19
|
-
firestoreToEvent(data) {
|
|
20
|
-
const eventType = data.eventType;
|
|
21
|
-
const createdAt = this.toDate(data.createdAt);
|
|
22
|
-
if (eventType === 'UserCreated') {
|
|
23
|
-
return new __1.UserCreated({
|
|
24
|
-
userId: data.userId,
|
|
25
|
-
firebaseUid: data.firebaseUid,
|
|
26
|
-
displayName: data.displayName,
|
|
27
|
-
phoneNumber: data.phoneNumber,
|
|
28
|
-
email: data.email,
|
|
29
|
-
photoUrl: data.photoUrl,
|
|
30
|
-
emailVerified: data.emailVerified,
|
|
31
|
-
createdAt,
|
|
32
|
-
createdBy: data.createdBy,
|
|
33
|
-
streamId: data.streamId,
|
|
34
|
-
version: data.version,
|
|
35
|
-
systemGenerated: data.systemGenerated ?? false,
|
|
36
|
-
});
|
|
37
|
-
}
|
|
38
|
-
throw new Error(`Unsupported event type: ${eventType}`);
|
|
39
|
-
}
|
|
40
|
-
toDate(timestamp) {
|
|
41
|
-
if (timestamp instanceof Date) {
|
|
42
|
-
return timestamp;
|
|
43
|
-
}
|
|
44
|
-
if (typeof timestamp === 'object' && 'toDate' in timestamp) {
|
|
45
|
-
return timestamp.toDate();
|
|
46
|
-
}
|
|
47
|
-
return new Date(timestamp);
|
|
48
|
-
}
|
|
49
|
-
}
|
|
50
|
-
exports.UIEventHandler = UIEventHandler;
|
|
@@ -1,9 +0,0 @@
|
|
|
1
|
-
import { UserModelStore } from '../store/UserModelStore';
|
|
2
|
-
import { UserEventStore } from '../store/UserEventStore';
|
|
3
|
-
export declare class UserController {
|
|
4
|
-
private modelStore;
|
|
5
|
-
private eventStore?;
|
|
6
|
-
constructor(modelStore: UserModelStore, eventStore?: UserEventStore | undefined);
|
|
7
|
-
loginUser(userFSId: string): Promise<string>;
|
|
8
|
-
}
|
|
9
|
-
//# sourceMappingURL=UserController.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"UserController.d.ts","sourceRoot":"","sources":["../../src/controllers/UserController.ts"],"names":[],"mappings":"AAEA,OAAO,EAAC,cAAc,EAAC,MAAM,yBAAyB,CAAC;AACvD,OAAO,EAAC,cAAc,EAAC,MAAM,yBAAyB,CAAC;AAGvD,qBAAa,cAAc;IAEnB,OAAO,CAAC,UAAU;IAClB,OAAO,CAAC,UAAU,CAAC;gBADX,UAAU,EAAE,cAAc,EAC1B,UAAU,CAAC,EAAE,cAAc,YAAA;IAGjC,SAAS,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;CA+BrD"}
|
|
@@ -1,36 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.UserController = void 0;
|
|
4
|
-
const EventBusSingleton_1 = require("../common/EventBusSingleton");
|
|
5
|
-
const UserEvents_1 = require("../UserEvents");
|
|
6
|
-
const rxjs_1 = require("rxjs");
|
|
7
|
-
class UserController {
|
|
8
|
-
constructor(modelStore, eventStore) {
|
|
9
|
-
this.modelStore = modelStore;
|
|
10
|
-
this.eventStore = eventStore;
|
|
11
|
-
}
|
|
12
|
-
async loginUser(userFSId) {
|
|
13
|
-
const existingUser = await this.modelStore.findByFirebaseUid(userFSId);
|
|
14
|
-
if (existingUser) {
|
|
15
|
-
return existingUser.userId;
|
|
16
|
-
}
|
|
17
|
-
const eventBus = (0, EventBusSingleton_1.getEventBus)();
|
|
18
|
-
const isUserCreatedForFirebaseUid = (event) => {
|
|
19
|
-
return event instanceof UserEvents_1.UserCreated && event.firebaseUid === userFSId;
|
|
20
|
-
};
|
|
21
|
-
try {
|
|
22
|
-
const event = await (0, rxjs_1.firstValueFrom)(eventBus.observable(isUserCreatedForFirebaseUid).pipe((0, rxjs_1.timeout)(10000)));
|
|
23
|
-
if (!event.userId) {
|
|
24
|
-
throw new Error('UserCreated event missing userId');
|
|
25
|
-
}
|
|
26
|
-
return event.userId;
|
|
27
|
-
}
|
|
28
|
-
catch (error) {
|
|
29
|
-
if (error.name === 'TimeoutError') {
|
|
30
|
-
throw new Error(`Timeout waiting for UserCreated event for firebaseUid: ${userFSId}`);
|
|
31
|
-
}
|
|
32
|
-
throw error;
|
|
33
|
-
}
|
|
34
|
-
}
|
|
35
|
-
}
|
|
36
|
-
exports.UserController = UserController;
|