@@ -3,7 +3,7 @@ import { GrazProvider } from "graz";
3
3
import { AppProps } from "next/app" ;
4
4
import Script from "next/script" ;
5
5
import "nextra-theme-docs/style.css" ;
6
- import { ReactNode , useEffect , useState } from "react" ;
6
+ import { ReactNode , useEffect , useState , useRef } from "react" ;
7
7
import { WagmiConfig , createConfig } from "wagmi" ;
8
8
import { arbitrum , avalanche , mainnet , sepolia } from "wagmi/chains" ;
9
9
import * as amplitude from "@amplitude/analytics-browser" ;
@@ -37,17 +37,21 @@ const config = createConfig(
37
37
38
38
export default function Nextra ( { Component, pageProps } : NextraAppProps ) {
39
39
const [ mounted , setMounted ] = useState ( false ) ;
40
+ const amplitudeInitialized = useRef ( false ) ;
40
41
41
42
useEffect ( ( ) => setMounted ( true ) , [ ] ) ;
42
43
useEffect ( ( ) => {
43
44
TagManager . initialize ( tagManagerArgs ) ;
44
45
} , [ ] ) ;
45
46
useEffect ( ( ) => {
46
- if ( AMPLITUDE_API_KEY ) {
47
- amplitude . init ( AMPLITUDE_API_KEY ) ;
47
+ if ( AMPLITUDE_API_KEY && ! amplitudeInitialized . current ) {
48
48
amplitude . add ( autocapturePlugin ( ) ) ;
49
+ amplitude . init ( AMPLITUDE_API_KEY , {
50
+ defaultTracking : true ,
51
+ } ) ;
52
+ amplitudeInitialized . current = true ;
49
53
}
50
- } ) ;
54
+ } , [ ] ) ;
51
55
52
56
// Make the global context available to every page.
53
57
return (
0 commit comments