All files / client/src/hooks use-page-view-tracking.ts

0% Statements 0/7
0% Branches 0/2
0% Functions 0/3
0% Lines 0/7

Press n or j to go to the next uncovered block, b, p or k for the previous block.

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25                                                 
import { useEffect } from "react";
import { useLocation } from "wouter";
import { apiRequest } from "@/lib/queryClient";
 
export function usePageViewTracking() {
  const [location] = useLocation();
 
  useEffect(() => {
    // Log page view when location changes
    const logPageView = async () => {
      try {
        await apiRequest("POST", "/api/analytics/pageview", {
          path: location,
          referrer: document.referrer || null,
        });
      } catch (error) {
        // Silently fail - don't disrupt user experience
        console.debug("Failed to log page view:", error);
      }
    };
 
    logPageView();
  }, [location]);
}