mirror of
https://github.com/bigcapitalhq/bigcapital.git
synced 2026-02-16 12:50:38 +00:00
feat: listen to Stripe integration events
This commit is contained in:
@@ -0,0 +1,32 @@
|
||||
import { Inject, Service } from 'typedi';
|
||||
import { EventSubscriber } from '@/lib/EventPublisher/EventPublisher';
|
||||
import { ISaleInvoiceCreatedPayload } from '@/interfaces';
|
||||
import { PosthogService } from '../PostHog';
|
||||
import { STRIPE_INTEGRAION_CONNECTED } from '@/constants/event-tracker';
|
||||
import events from '@/subscribers/events';
|
||||
|
||||
@Service()
|
||||
export class StripeIntegrationEventsTracker extends EventSubscriber {
|
||||
@Inject()
|
||||
private posthog: PosthogService;
|
||||
|
||||
/**
|
||||
* Constructor method.
|
||||
*/
|
||||
public attach(bus) {
|
||||
bus.subscribe(
|
||||
events.stripeIntegration.onOAuthCodeGranted,
|
||||
this.handleTrackOAuthCodeGrantedTrackEvent
|
||||
);
|
||||
}
|
||||
|
||||
private handleTrackOAuthCodeGrantedTrackEvent = ({
|
||||
tenantId,
|
||||
}: ISaleInvoiceCreatedPayload) => {
|
||||
this.posthog.trackEvent({
|
||||
distinctId: `tenant-${tenantId}`,
|
||||
event: STRIPE_INTEGRAION_CONNECTED,
|
||||
properties: {},
|
||||
});
|
||||
};
|
||||
}
|
||||
@@ -15,6 +15,7 @@ import { BankRuleEventsTracker } from './BankRuleEventsTracker';
|
||||
import { PdfTemplateEventsTracker } from './PdfTemplateEventsTracker';
|
||||
import { PaymentMethodEventsTracker } from './PaymentMethodEventsTracker';
|
||||
import { PaymentLinkEventsTracker } from './PaymentLinkEventsTracker';
|
||||
import { StripeIntegrationEventsTracker } from './StripeIntegrationEventsTracker';
|
||||
|
||||
export const EventsTrackerListeners = [
|
||||
SaleInvoiceEventsTracker,
|
||||
@@ -34,4 +35,5 @@ export const EventsTrackerListeners = [
|
||||
PdfTemplateEventsTracker,
|
||||
PaymentMethodEventsTracker,
|
||||
PaymentLinkEventsTracker,
|
||||
StripeIntegrationEventsTracker,
|
||||
];
|
||||
|
||||
Reference in New Issue
Block a user