feat: add websocket and analytics
This commit is contained in:
+14
-2
@@ -1,4 +1,5 @@
|
||||
import type { Metadata } from "next";
|
||||
import Script from "next/script";
|
||||
import { Geist, Geist_Mono, Lora, Bricolage_Grotesque } from "next/font/google";
|
||||
import { ogDefault } from "@/lib/og";
|
||||
import { ThemeProvider } from "@/components/theme-provider";
|
||||
@@ -6,6 +7,7 @@ import { TooltipProvider } from "@/components/ui/tooltip";
|
||||
import { AudioPlayerProvider, FloatingPlayer } from "@/components/audio-player";
|
||||
import { AuthProvider } from "@/components/auth/auth-provider";
|
||||
import { AuthGateProvider } from "@/components/auth/auth-gate";
|
||||
import { NotificationsProvider } from "@/components/notifications/notifications-provider";
|
||||
import { SharePostProvider } from "@/components/social/share-post-provider";
|
||||
import { Toaster } from "@/components/ui/toaster";
|
||||
import "./globals.css";
|
||||
@@ -73,7 +75,8 @@ export default function RootLayout({
|
||||
disableTransitionOnChange
|
||||
>
|
||||
<AuthProvider>
|
||||
<AuthGateProvider>
|
||||
<NotificationsProvider>
|
||||
<AuthGateProvider>
|
||||
<AudioPlayerProvider>
|
||||
<TooltipProvider>
|
||||
<SharePostProvider>
|
||||
@@ -86,9 +89,18 @@ export default function RootLayout({
|
||||
</SharePostProvider>
|
||||
</TooltipProvider>
|
||||
</AudioPlayerProvider>
|
||||
</AuthGateProvider>
|
||||
</AuthGateProvider>
|
||||
</NotificationsProvider>
|
||||
</AuthProvider>
|
||||
</ThemeProvider>
|
||||
{/* Rybbit analytics — loads after hydration (afterInteractive is
|
||||
next/script's defer-equivalent). Site-wide via the root layout,
|
||||
loaded once across navigations. */}
|
||||
<Script
|
||||
src="https://analytics.krispire.cloud/api/script.js"
|
||||
data-site-id="1"
|
||||
strategy="afterInteractive"
|
||||
/>
|
||||
</body>
|
||||
</html>
|
||||
);
|
||||
|
||||
Reference in New Issue
Block a user