import { useEffect } from 'react'; import { useLocation } from 'react-router-dom'; import { trackPageView, trackToolUsage, trackSearch, trackThemeChange } from '../utils/analytics'; // Custom hook for analytics tracking in React components export const useAnalytics = () => { const location = useLocation(); // Track page views on route changes useEffect(() => { const path = location.pathname; let title = 'Dewe.Dev'; // Generate meaningful page titles switch (path) { case '/': title = 'Dewe.Dev - Professional Developer Utilities'; break; case '/object-editor': title = 'Object Editor - Dewe.Dev'; break; case '/table-editor': title = 'Table Editor - Dewe.Dev'; break; case '/url': title = 'URL Encoder/Decoder - Dewe.Dev'; break; case '/base64': title = 'Base64 Encoder/Decoder - Dewe.Dev'; break; case '/beautifier': title = 'Code Beautifier/Minifier - Dewe.Dev'; break; case '/diff': title = 'Text Diff Checker - Dewe.Dev'; break; case '/text-length': title = 'Text Length Checker - Dewe.Dev'; break; case '/privacy': title = 'Privacy Policy - Dewe.Dev'; break; case '/terms': title = 'Terms of Service - Dewe.Dev'; break; default: title = `${path} - Dewe.Dev`; } // Track the page view trackPageView(path, title); }, [location]); // Return tracking functions for components to use return { trackToolUsage, trackSearch, trackThemeChange, }; };