espace-paie-odentas/components/PostHogProvider.tsx
2025-10-22 11:00:44 +02:00

34 lines
1 KiB
TypeScript

'use client';
import posthog from 'posthog-js';
import { PostHogProvider as PHProvider } from 'posthog-js/react';
import { useEffect } from 'react';
export function PostHogProvider({ children }: { children: React.ReactNode }) {
useEffect(() => {
// Initialiser PostHog uniquement côté client et une seule fois
if (typeof window !== 'undefined' && !posthog.__loaded) {
const key = process.env.NEXT_PUBLIC_POSTHOG_KEY;
const host = process.env.NEXT_PUBLIC_POSTHOG_HOST;
if (!key || !host) {
console.error('PostHog: Variables d\'environnement manquantes');
return;
}
posthog.init(key, {
api_host: host,
person_profiles: 'identified_only',
capture_pageview: false,
capture_pageleave: true,
loaded: (posthog) => {
if (process.env.NODE_ENV === 'development') {
(window as any).posthog = posthog;
}
},
});
}
}, []);
return <PHProvider client={posthog}>{children}</PHProvider>;
}