"use client"; import React, { memo } from "react"; import TextBox from "@/components/Textbox"; import MediaContent from "@/components/shared/MediaContent"; import { cls } from "@/lib/utils"; import { Plus } from "lucide-react"; import type { LucideIcon } from "lucide-react"; import type { ButtonConfig } from "@/types/button"; interface Metric { id: string; value: string; label: string; } interface HeroBillboardMetricsProps { title: string; description: string; tag?: string; tagIcon?: LucideIcon; buttons?: ButtonConfig[]; imageSrc?: string; videoSrc?: string; imageAlt?: string; videoAriaLabel?: string; frameStyle?: "card" | "browser"; metricsLabel: string; metrics: Metric[]; ariaLabel?: string; className?: string; containerClassName?: string; textBoxClassName?: string; titleClassName?: string; descriptionClassName?: string; tagClassName?: string; buttonContainerClassName?: string; buttonClassName?: string; buttonTextClassName?: string; mediaWrapperClassName?: string; imageClassName?: string; browserBarClassName?: string; addressBarClassName?: string; metricsContainerClassName?: string; metricsLabelClassName?: string; metricsGridClassName?: string; metricClassName?: string; metricValueClassName?: string; metricLabelClassName?: string; } const HeroBillboardMetrics = ({ title, description, tag, tagIcon, buttons, imageSrc, videoSrc, imageAlt = "", videoAriaLabel = "Hero video", frameStyle = "card", metricsLabel, metrics, ariaLabel = "Hero section", className = "", containerClassName = "", textBoxClassName = "", titleClassName = "", descriptionClassName = "", tagClassName = "", buttonContainerClassName = "", buttonClassName = "", buttonTextClassName = "", mediaWrapperClassName = "", imageClassName = "", browserBarClassName = "", addressBarClassName = "", metricsContainerClassName = "", metricsLabelClassName = "", metricsGridClassName = "", metricClassName = "", metricValueClassName = "", metricLabelClassName = "", }: HeroBillboardMetricsProps) => { return (
{frameStyle === "browser" ? (
) : (
)}

{metricsLabel}

{metrics.map((metric, index) => (

{metric.value}

{metric.label}

))}
); }; HeroBillboardMetrics.displayName = "HeroBillboardMetrics"; export default memo(HeroBillboardMetrics);