@@ -58,11 +58,11 @@ export const useSprig = () => {
5858 }
5959 } , [ sprigEnvironmentId ] ) ;
6060
61- // Track experimentation page visits
61+ // Track page visits for specific documentation pages
6262 useEffect ( ( ) => {
6363 if ( ! sprigEnvironmentId || typeof window === 'undefined' ) return ;
6464
65- const trackExperimentView = ( ) => {
65+ const trackPageView = ( eventName : string ) => {
6666 const now = Date . now ( ) ;
6767
6868 // Prevent duplicate events within debounce period
@@ -76,60 +76,25 @@ export const useSprig = () => {
7676
7777 try {
7878 lastEventTime = now ;
79- window . Sprig ( 'track' , 'viewed_experimentation_docs' ) ;
79+ window . Sprig ( 'track' , eventName ) ;
8080 } catch ( error ) {
8181 console . error ( 'Sprig track failed:' , error ) ;
8282 }
8383 } ;
8484
8585 const handleRouteChange = ( url : string ) => {
8686 if ( url . includes ( '/docs/experiments' ) ) {
87- trackExperimentView ( ) ;
87+ trackPageView ( 'viewed_experimentation_docs' ) ;
88+ } else if ( url . includes ( '/docs/featureflags' ) ) {
89+ trackPageView ( 'viewed_featureflags_docs' ) ;
8890 }
8991 } ;
9092
91- // Track if already on experimentation page
93+ // Track if already on a tracked page
9294 if ( router . asPath . includes ( '/docs/experiments' ) ) {
93- trackExperimentView ( ) ;
94- }
95-
96- router . events . on ( 'routeChangeComplete' , handleRouteChange ) ;
97- return ( ) => router . events . off ( 'routeChangeComplete' , handleRouteChange ) ;
98- } , [ router , sprigEnvironmentId ] ) ;
99-
100- // Track feature flags page visits
101- useEffect ( ( ) => {
102- if ( ! sprigEnvironmentId || typeof window === 'undefined' ) return ;
103-
104- const trackFeatureFlagView = ( ) => {
105- const now = Date . now ( ) ;
106-
107- // Prevent duplicate events within debounce period
108- if ( now - lastEventTime < EVENT_DEBOUNCE_MS ) {
109- return ;
110- }
111-
112- if ( ! window . Sprig ) {
113- return ;
114- }
115-
116- try {
117- lastEventTime = now ;
118- window . Sprig ( 'track' , 'viewed_featureflags_docs' ) ;
119- } catch ( error ) {
120- console . error ( 'Sprig track failed:' , error ) ;
121- }
122- } ;
123-
124- const handleRouteChange = ( url : string ) => {
125- if ( url . includes ( '/docs/featureflags' ) ) {
126- trackFeatureFlagView ( ) ;
127- }
128- } ;
129-
130- // Track if already on feature flags page
131- if ( router . asPath . includes ( '/docs/featureflags' ) ) {
132- trackFeatureFlagView ( ) ;
95+ trackPageView ( 'viewed_experimentation_docs' ) ;
96+ } else if ( router . asPath . includes ( '/docs/featureflags' ) ) {
97+ trackPageView ( 'viewed_featureflags_docs' ) ;
13398 }
13499
135100 router . events . on ( 'routeChangeComplete' , handleRouteChange ) ;
0 commit comments