diff --git a/.env.example b/.env.example index 5b5bcb5..4ed8a6e 100644 --- a/.env.example +++ b/.env.example @@ -30,6 +30,9 @@ RESEND_FROM_EMAIL="wrdo " # Google Analytics NEXT_PUBLIC_GOOGLE_ID= +# Umami Script +NEXT_PUBLIC_UMAMI_SCRIPT= +NEXT_PUBLIC_UMAMI_WEBSITE_ID= # ScreenShot API SCREENSHOTONE_BASE_URL=https://shot.wr.do diff --git a/app/layout.tsx b/app/layout.tsx index a7d30eb..a8f514e 100644 --- a/app/layout.tsx +++ b/app/layout.tsx @@ -10,9 +10,10 @@ import { ViewTransitions } from "next-view-transitions"; import { cn, constructMetadata } from "@/lib/utils"; import { Toaster } from "@/components/ui/sonner"; import ModalProvider from "@/components/modals/providers"; +import UmamiAnalytics from "@/components/shared/UmamiAnalytics"; import { TailwindIndicator } from "@/components/tailwind-indicator"; -import GoogleAnalytics from "./GoogleAnalytics"; +import GoogleAnalytics from "../components/shared/GoogleAnalytics"; interface RootLayoutProps { children: React.ReactNode; @@ -49,6 +50,7 @@ export default async function RootLayout({ children }: RootLayoutProps) { + diff --git a/app/GoogleAnalytics.tsx b/components/shared/GoogleAnalytics.tsx similarity index 95% rename from app/GoogleAnalytics.tsx rename to components/shared/GoogleAnalytics.tsx index b3cb9a6..3e904c9 100644 --- a/app/GoogleAnalytics.tsx +++ b/components/shared/GoogleAnalytics.tsx @@ -1,7 +1,8 @@ "use client"; import Script from "next/script"; -import * as gtag from "../gtag.js"; + +import * as gtag from "../../gtag.js"; const GoogleAnalytics = () => { return ( diff --git a/components/shared/UmamiAnalytics.tsx b/components/shared/UmamiAnalytics.tsx new file mode 100644 index 0000000..f6b3e86 --- /dev/null +++ b/components/shared/UmamiAnalytics.tsx @@ -0,0 +1,26 @@ +"use client"; + +import Script from "next/script"; + +const UmamiAnalytics = () => { + const umamiScriptUrl = process.env.NEXT_PUBLIC_UMAMI_SCRIPT; + const websiteId = process.env.NEXT_PUBLIC_UMAMI_WEBSITE_ID; + + return ( + <> + {process.env.NEXT_PUBLIC_UMAMI_SCRIPT && + process.env.NEXT_PUBLIC_UMAMI_WEBSITE_ID ? ( +