import React from 'react'; type Variant = 'image-with-text__card--no-card' | 'image-with-text__card--full-img'; interface ImageWithTextCardProps { variant?: Variant; reverse?: boolean; imageSrc: string; imageAlt: string; title: string; activityTitle: string; activityText: string; detailsTitle: string; detailsText: string; buttonText: string; onButtonClick?: () => void; } const ImageWithTextCard: React.FC = ({ variant, reverse, imageSrc, imageAlt, title, activityTitle, activityText, detailsTitle, detailsText, buttonText, onButtonClick }) => (
{imageAlt}

{title}

{activityTitle}

{activityText}

{detailsTitle}

{detailsText}

); interface ImageWithTextSectionProps { variant?: Variant; sectionTitle: string; hasBackground?: boolean; cards: [Omit, Omit]; } export const ImageWithTextSection: React.FC = ({ variant, sectionTitle, hasBackground = true, cards }) => { const className = ['image-with-text', hasBackground && 'image-with-text--background'].filter(Boolean).join(' '); return (

{sectionTitle}

); }; interface ImageWithTextProps { sectionTitle?: string; variants?: Variant[]; hasBackground?: boolean; } const DEFAULT_IMAGE = 'https://images.pexels.com/photos/3264723/pexels-photo-3264723.jpeg?cs=srgb&dl=pexels-alexazabache-3264723.jpg&fm=jpg'; export const ImageWithText: React.FC = ({ sectionTitle = 'Activities', variants, hasBackground = true }) => { const baseCard = { imageSrc: DEFAULT_IMAGE, imageAlt: 'eiland', title: 'Ontdek het zonnige Santorini', activityTitle: 'Your activity', activityText: 'Lorem ipsum dolor sit amet, consectetur adipiscing elit. Integer non sollicitudin risus. Donec euismod metus et purus ultricies condimentum. Vestibulum vel sodales massa. Pellentesque bibendum nisl at hendrerit sagittis. Pellentesque eget dui scelerisque, dictum diam non, ultrices velit. Duis et sem est. Suspendisse potenti.', detailsTitle: 'Details', detailsText: 'Etiam ipsum elit, volutpat sed semper at, eleifend vitae erat. Orci varius natoque penatibus et magnis dis parturient montes, nascetur ridiculus mus. In at lectus rutrum elit egestas consectetur. Suspendisse sit amet erat dapibus, tincidunt arcu fringilla, auctor justo.', buttonText: 'Book now' } as const; if (!variants || variants.length === 0) { return ; } return ( <> {variants.map((variant) => ( ))} ); }; export default ImageWithText;