import clsx from 'clsx'; import { LandingStatItem } from '@/components/landing/stats/LandingStatItem'; import { GlowBg } from '@/components/shared/ui/glow-bg'; /** * A component that displays a grid of statistics. * Can be configured to show preset stats or custom stats. */ export function LandingStatsSection({ className, innerClassName, title, titleComponent, description, descriptionComponent, stats, variant = 'default', withBackground = false, withBackgroundGlow = false, backgroundGlowVariant = 'primary', columnsDesktop = 3, columnsMobile = 1, hasBorders = true, textPosition = 'center', children, }: { className?: string; innerClassName?: string; title?: string; titleComponent?: React.ReactNode; description?: string | React.ReactNode; descriptionComponent?: React.ReactNode; stats?: Array<{ value: string; label?: string; description: string }>; variant?: 'primary' | 'secondary' | 'default'; withBackground?: boolean; withBackgroundGlow?: boolean; backgroundGlowVariant?: 'primary' | 'secondary'; columnsDesktop?: 2 | 3 | 4; columnsMobile?: 1 | 2; hasBorders?: boolean; textPosition?: 'center' | 'left'; children?: React.ReactNode; }) { return (
{withBackgroundGlow ? (
) : null}
{(title || titleComponent) && (
{title ? (

{title}

) : ( titleComponent )} {description ? (

{description}

) : ( descriptionComponent )}
)}
{stats?.map((stat, index) => { return ( ); })}
{children}
); }