Files
calendar/packages/lib/analyticsManager/handleAnalyticsEvents.ts
T
Amit SharmaGitHubcubic-dev-ai[bot] <191113872+cubic-dev-ai[bot]@users.noreply.github.com>
50c15f0d51 fix: dub installation on teams (#21654)
Co-authored-by: cubic-dev-ai[bot] <191113872+cubic-dev-ai[bot]@users.noreply.github.com>
2025-06-11 18:17:55 +02:00

45 lines
1.0 KiB
TypeScript

import tasker from "@calcom/features/tasker";
import type { CredentialForCalendarService } from "@calcom/types/Credential";
interface HandleAnalyticsEventsProps {
credentials: CredentialForCalendarService[];
rawBookingData: Record<string, any>;
bookingInfo: {
email: string;
name: string;
eventName: string;
};
isTeamEventType: boolean;
}
export const handleAnalyticsEvents = async ({
credentials,
rawBookingData,
bookingInfo,
isTeamEventType,
}: HandleAnalyticsEventsProps) => {
const { dub_id } = await rawBookingData;
if (!dub_id || typeof dub_id !== "string") return;
const dubCredential = credentials.find((cred) => {
if (cred.appId !== "dub") return false;
if (isTeamEventType && !cred.teamId) return false;
return true;
});
if (!dubCredential) return;
try {
await tasker.create("sendAnalyticsEvent", {
credentialId: dubCredential.id,
info: {
id: dub_id,
...bookingInfo,
},
});
} catch (err) {
console.error("Error sending dub lead: ", err);
}
};