'use client' import Script from 'next/script' import { useEffect } from 'react' export default function Analytics() { useEffect(() => { window.TL_GA4_MEASUREMENT_ID = process.env.NEXT_PUBLIC_GA4_MEASUREMENT_ID window.TL_GOOGLE_ADS_ID = process.env.NEXT_PUBLIC_GOOGLE_ADS_ID window.TL_GTM_CONTAINER_ID = process.env.NEXT_PUBLIC_GTM_CONTAINER_ID }, []) useEffect(() => { const handleCopy = (copyEvent: ClipboardEvent) => { const isWithinCodeBlock = (copyEvent.target as HTMLElement | null)?.closest('pre, code') if (isWithinCodeBlock) { const copiedText = window.getSelection()?.toString() || '' if (window.tlanalytics?.trackCopyCode) { window.tlanalytics.trackCopyCode({ page_category: 'docs', text_snippet: copiedText, }) } // Track Google Ads conversion for code block copies if (window.tlanalytics?.gtag) { window.tlanalytics.gtag('event', 'conversion', { send_to: 'AW-17268182782/qIuDCMnhl_EaEP6djqpA', value: 1.0, currency: 'USD', }) } } } document.addEventListener('copy', handleCopy) return () => { document.removeEventListener('copy', handleCopy) } }, []) const analyticsScriptSrc = process.env.NODE_ENV === 'development' ? 'http://localhost:5173/tl-analytics.js' : 'https://analytics.tldraw.com/tl-analytics.js' return ( <>