Files
bigcapital/packages/server/src/modules/EventsTracker/events/SubscriptionEventsTracker.ts
2025-04-07 11:51:24 +02:00

49 lines
1.7 KiB
TypeScript

import { Injectable } from '@nestjs/common';
import { OnEvent } from '@nestjs/event-emitter';
import { ITransactionsLockingPartialUnlocked } from '../../TransactionsLocking/types/TransactionsLocking.types';
import { EventTrackerService } from '../EventTracker.service';
import {
TRANSACTIONS_LOCKING_LOCKED,
TRANSACTIONS_LOCKING_LOCKING_CANCELLED,
TRANSACTIONS_LOCKING_PARTIALLY_UNLOCK_CANCELLED,
TRANSACTIONS_LOCKING_PARTIALLY_UNLOCKED,
} from '../event-tracker';
import { events } from '@/common/events/events';
@Injectable()
export class TransactionsLockingEventsTracker {
constructor(public readonly posthog: EventTrackerService) {}
@OnEvent(events.transactionsLocking.locked)
public handleTransactionsLockingLockedEvent({}: ITransactionsLockingPartialUnlocked) {
this.posthog.trackEvent({
event: TRANSACTIONS_LOCKING_LOCKED,
properties: {},
});
}
@OnEvent(events.transactionsLocking.lockCanceled)
public handleTransactionsLockingCancelledEvent({}: ITransactionsLockingPartialUnlocked) {
this.posthog.trackEvent({
event: TRANSACTIONS_LOCKING_LOCKING_CANCELLED,
properties: {},
});
}
@OnEvent(events.transactionsLocking.partialUnlocked)
public handleTransactionsLockingPartiallyUnlockedEvent({}: ITransactionsLockingPartialUnlocked) {
this.posthog.trackEvent({
event: TRANSACTIONS_LOCKING_PARTIALLY_UNLOCKED,
properties: {},
});
}
@OnEvent(events.transactionsLocking.partialUnlockCanceled)
public handleTransactionsLockingPartiallyUnlockCancelledEvent({}: ITransactionsLockingPartialUnlocked) {
this.posthog.trackEvent({
event: TRANSACTIONS_LOCKING_PARTIALLY_UNLOCK_CANCELLED,
properties: {},
});
}
}