"use client"; import { memo } from "react"; import TextBox from "@/components/Textbox"; import MediaContent from "@/components/shared/MediaContent"; import { cls, shouldUseInvertedText } from "@/lib/utils"; import { useTheme } from "@/providers/themeProvider/ThemeProvider"; import type { LucideIcon } from "lucide-react"; import type { InvertedBackground } from "@/providers/themeProvider/config/constants"; interface Metric { value: string; title: string; } interface MetricSplitMediaAboutProps { title: string; description: string; tag?: string; tagIcon?: LucideIcon; metrics: Metric[]; imageSrc?: string; videoSrc?: string; imageAlt?: string; videoAriaLabel?: string; useInvertedBackground: InvertedBackground; ariaLabel?: string; className?: string; containerClassName?: string; gridClassName?: string; leftColumnClassName?: string; rightColumnClassName?: string; textBoxClassName?: string; titleClassName?: string; descriptionClassName?: string; tagClassName?: string; metricsContainerClassName?: string; metricCardClassName?: string; metricValueClassName?: string; metricTitleClassName?: string; mediaWrapperClassName?: string; imageClassName?: string; } const MetricSplitMediaAbout = ({ title, description, tag, tagIcon, metrics, imageSrc, videoSrc, imageAlt = "", videoAriaLabel = "About section video", useInvertedBackground, ariaLabel = "About section", className = "", containerClassName = "", gridClassName = "", leftColumnClassName = "", rightColumnClassName = "", textBoxClassName = "", titleClassName = "", descriptionClassName = "", tagClassName = "", metricsContainerClassName = "", metricCardClassName = "", metricValueClassName = "", metricTitleClassName = "", mediaWrapperClassName = "", imageClassName = "", }: MetricSplitMediaAboutProps) => { const theme = useTheme(); const shouldUseLightText = shouldUseInvertedText(useInvertedBackground, theme.cardStyle); return (
{metrics && metrics.length > 0 && (
{metrics.slice(0, 2).map((metric, index) => (
{metric.value}

{metric.title}

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