2026-03-09 11:18:22 +01:00
|
|
|
import { PUBLIC_IS_SELFHOSTED } from '$env/static/public';
|
2025-11-24 01:00:50 +01:00
|
|
|
import { initPosthog } from '$lib/utils/services/posthog';
|
|
|
|
|
import { initSentry } from '$lib/utils/services/sentry';
|
2026-03-11 10:37:44 +01:00
|
|
|
import { initUmami } from '$lib/utils/services/umami';
|
2026-03-09 11:18:22 +01:00
|
|
|
import { licenseApi } from '$features/license/api/license.svelte';
|
|
|
|
|
|
|
|
|
|
let isInitialized = false;
|
2024-12-26 07:23:46 +01:00
|
|
|
|
|
|
|
|
export function setupAnalytics() {
|
2026-03-09 11:18:22 +01:00
|
|
|
if (isInitialized) return;
|
|
|
|
|
isInitialized = true;
|
|
|
|
|
|
2024-12-26 07:23:46 +01:00
|
|
|
initSentry();
|
|
|
|
|
initPosthog();
|
2026-03-11 10:37:44 +01:00
|
|
|
initUmami();
|
2024-12-26 07:23:46 +01:00
|
|
|
}
|
2026-03-09 11:18:22 +01:00
|
|
|
|
|
|
|
|
/** Checks if this is cloud deployment and initializes analytics */
|
|
|
|
|
export function setupCloudAnalytics() {
|
|
|
|
|
if (PUBLIC_IS_SELFHOSTED !== 'true') {
|
|
|
|
|
setupAnalytics();
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
export function setupAnalyticsBasedOnLicense() {
|
|
|
|
|
if (licenseApi.hasAccess('no-tracking')) {
|
|
|
|
|
return;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
setupAnalytics();
|
|
|
|
|
}
|