import * as React from 'react'; import { useState } from 'react'; import './Carousel.scss'; import { ImageViewer } from '../ImageViewer/ImageViewer'; export interface ICarouselProps { listItems: any; per_page: number } export const Carousel = ({ listItems, per_page }: ICarouselProps) => { const [obj, setObj] = useState({ id: '', src: '' }); const firstElement = (listItems && listItems.length > 0 && listItems[0]) || null; const [current_page, setCurrentPage] = useState(0); let cnt = 0; React.useEffect(() => { setObj(firstElement); }, []); function prevPage() { if (current_page > 0) { setCurrentPage((prestate) => prestate - 1); } } function nextPage() { if (current_page < numPages() - 1) { setCurrentPage((prestate) => prestate + 1); } } function numPages() { return Math.ceil(listItems.length / per_page); } const getDynamicClass = (index: any) => { if (current_page === index) { return 'img-fade img-current'; } return 'img-fade img-slide-hide' } const List = ({ item, index }: any) => { return ( (