import classNames from 'classnames'; import React, { FC, ReactType, ReactNode } from 'react'; import css from './index.module.css'; export interface CarouselTextImageProps { Image?: ReactType; ImageProps?: { title?: string; description?: string; svg?: { absolutePath?: string; content?: string; dataURI?: string; originalContent?: string; relativePath?: string; }; file?: { contentType?: string; url?: string; fileName?: string; details?: { image?: { width?: string; height?: string; }; }; }; fluid?: unknown; }; title: string; text?: ReactNode; imagePosition?: string; contentAlignment?: string; isSvgImage?: boolean; } const CarouselTextImage: FC = ({ Image, ImageProps = {}, imagePosition = 'Top', contentAlignment = 'Left', title, text, isSvgImage = false, }) => { imagePosition = imagePosition ? imagePosition : 'Top'; contentAlignment = contentAlignment ? contentAlignment : 'Left'; const textImageClassNames = classNames(css.textImage, { [`${css[`textImage${`Image${imagePosition}`}`]}`]: imagePosition, [`${css[`textImage${`Content${contentAlignment}`}`]}`]: contentAlignment, }); return (
{!isSvgImage && Image && ImageProps && ( )} {isSvgImage && ImageProps && ImageProps.svg && (
)}

{title}

{text}
); }; export default CarouselTextImage;