import type { ReactNode } from 'react'; import Glow from '@/components/site/glow'; import Icon from '@/components/site/icon'; import Pill from '@/components/site/pill'; import Section from '@/components/site/section'; import { useSiteInfo } from '@/hooks/use-site-info'; type CtaBannerProps = { badge: string; title: string; description: string; /** Usually one primary and one secondary . */ actions: ReactNode; showContacts?: boolean; }; /** Centered call-to-action card used to close informational pages. */ export default function CtaBanner({ badge, title, description, actions, showContacts = true, }: CtaBannerProps) { const site = useSiteInfo(); const contacts = [ { icon: 'call', label: site.phone.label }, { icon: 'mail', label: site.email.busdev }, { icon: 'location_on', label: 'Bintaro & Plaza Simatupang, Jakarta' }, ]; return (
} >
{badge}

{title}

{description}

{actions}
{showContacts && (
{contacts.map((contact) => ( {contact.label} ))}
)}
); }