diff --git a/env.example b/env.example index 0e07d31..d2d5fa0 100644 --- a/env.example +++ b/env.example @@ -87,6 +87,10 @@ NEXT_PUBLIC_OPENPANEL_CLIENT_ID="" # ----------------------------------------------------------------------------- NEXT_PUBLIC_PLAUSIBLE_DOMAIN="" # ----------------------------------------------------------------------------- +# Seline Analytics +# ----------------------------------------------------------------------------- +NEXT_PUBLIC_SELINE_TOKEN="" +# ----------------------------------------------------------------------------- # DataFast Analytics (https://datafa.st) # ----------------------------------------------------------------------------- NEXT_PUBLIC_DATAFAST_ANALYTICS_ID="" diff --git a/src/analytics/analytics.tsx b/src/analytics/analytics.tsx index c87a27b..5043ff8 100644 --- a/src/analytics/analytics.tsx +++ b/src/analytics/analytics.tsx @@ -3,6 +3,7 @@ import { UmamiAnalytics } from "./umami-analytics"; import { PlausibleAnalytics } from "./plausible-analytics"; import DataFastAnalytics from "./data-fast-analytics"; import OpenPanelAnalytics from "./open-panel-analytics"; +import { SelineAnalytics } from "./seline-analytics"; /** * Analytics Components all in one @@ -31,6 +32,9 @@ export function Analytics() { {/* openpanel analytics */} + + {/* seline analytics */} + ); } diff --git a/src/analytics/seline-analytics.tsx b/src/analytics/seline-analytics.tsx new file mode 100644 index 0000000..67f80a1 --- /dev/null +++ b/src/analytics/seline-analytics.tsx @@ -0,0 +1,23 @@ +"use client"; + +import Script from "next/script"; + +/** + * Seline Analytics + * + * https://app.seline.com + */ +export function SelineAnalytics() { + if (process.env.NODE_ENV !== "production") { + return null; + } + + const token = process.env.NEXT_PUBLIC_SELINE_TOKEN as string; + if (!token) { + return null; + } + + return ( +