better-auth/apps/web/modules/analytics/provider/mixpanel/index.tsx

30 lines
588 B
TypeScript
Raw Permalink Normal View History

2025-10-29 13:43:43 +05:00
"use client";
// @ts-expect-error package is not installed per default
import mixpanel from "mixpanel-browser";
import { useEffect } from "react";
const mixpanelToken = process.env.NEXT_PUBLIC_MIXPANEL_TOKEN as string;
export function AnalyticsScript() {
useEffect(() => {
mixpanel.init(mixpanelToken, {
debug: true,
track_pageview: true,
persistence: "localStorage",
});
}, []);
return null;
}
export function useAnalytics() {
const trackEvent = (event: string, data?: Record<string, unknown>) => {
mixpanel.track(event, data);
};
return {
trackEvent,
};
}