"use client"; import Link from "next/link"; import { useEffect, useRef } from "react"; import { ArrowRightIcon } from "@phosphor-icons/react/dist/ssr"; import styles from "./ContactCtaSection.module.css"; import { contactCtaData, type ContactInfo } from "./ContactCtaData"; function ObfuscatedLink({ item }: { item: ContactInfo }) { const ref = useRef(null); useEffect(() => { if (!ref.current) return; if (item.obfuscated?.tel) { ref.current.href = `tel:${item.obfuscated.tel}`; } else if (item.obfuscated?.user && item.obfuscated?.domain) { ref.current.href = `mailto:${item.obfuscated.user}@${item.obfuscated.domain}`; } }, [item.obfuscated]); const Icon = item.icon; return ( ); } export default function ContactCtaSection() { const { heading, lead, buttonLabel, buttonHref, contacts } = contactCtaData; return (

{heading}

{lead}

{buttonLabel}
{contacts.map((item: ContactInfo) => item.obfuscated ? ( ) : ( ), )}
); }