import React from 'react'; import clsx from 'clsx'; import { PageGrid, PageGridRow, PageGridCol } from 'shared/components/PageGrid/page-grid'; import { CardTextIconCard, CardTextIconCardProps } from 'shared/components/CardTextIcon'; export interface CardsTextGridProps { /** Section heading (required) */ heading: string; /** Optional description text */ description?: string; /** Array of card data to display */ cards: CardTextIconCardProps[]; /** Additional CSS classes */ className?: string; } /** * CardsTextGrid Component * * A section pattern with a header (heading + description) and a grid of * CardTextIconCard components. Uses PageGrid.Row as="ul" with cards as * PageGrid.Col as="li". Aspect ratios: sm 16:9, md 3:2, lg 3:1. * * @example * */ export const CardsTextGrid: React.FC = ({ heading, description, cards, className, }) => { return (

{heading}

{description &&

{description}

}
{cards.map((card, index) => ( ))}
); }; export default CardsTextGrid;