"use client"; import type { ReactNode } from "react"; import { trackWhatsAppOpen } from "@/lib/analytics"; import { buildWhatsAppUrl } from "@/lib/whatsapp"; interface WhatsAppLinkProps { children: ReactNode; className?: string; /** Assunto da conversa, na frase "Quero conversar sobre {service}". Sem ele, a mensagem fala de "um projeto". */ service?: string; placement: string; } /** Rótulo de métrica quando o link não traz um assunto; o texto da mensagem usa "um projeto". */ const DEFAULT_ANALYTICS_SERVICE = "Contato"; export default function WhatsAppLink({ children, className = "", service, placement, }: WhatsAppLinkProps) { const analyticsService = service ?? DEFAULT_ANALYTICS_SERVICE; return ( { if (event.button === 0) trackWhatsAppOpen({ service: analyticsService, placement }); }} onAuxClick={(event) => { if (event.button === 1) trackWhatsAppOpen({ service: analyticsService, placement }); }} > {children} ); }