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

33 lines
600 B
TypeScript
Raw Normal View History

2025-10-29 13:43:43 +05:00
"use client";
import Script from "next/script";
const umamiTrackingId = process.env.NEXT_PUBLIC_UMAMI_TRACKING_ID as string;
export function AnalyticsScript() {
return (
<Script
async
type="text/javascript"
data-website-id={umamiTrackingId}
src="https://analytics.eu.umami.is/script.js"
/>
);
}
export function useAnalytics() {
const trackEvent = (event: string, data?: Record<string, unknown>) => {
if (typeof window === "undefined" || !(window as any).umami) {
return;
}
(window as any).umami.track(event, {
props: data,
});
};
return {
trackEvent,
};
}