"use client"; import "swiper/css"; import { Badge } from "@/shared/libs/shadcn/ui/badge"; import { Button } from "@/shared/libs/shadcn/ui/button"; import { useRouter } from "next/navigation"; import { Autoplay, Navigation, Pagination } from "swiper/modules"; import { Swiper, SwiperSlide } from "swiper/react"; export interface HeroSwiperProps { data: { id: string; isClickable: boolean; title: string; tags: string[]; description: string; buttonContent: string; buttonLink: string; imageUrl: string; startDate: string; endDate: string; }[]; } const HeroSwiper = (props: HeroSwiperProps) => { const router = useRouter(); return (
console.log("slide change")} onSwiper={(swiper) => console.log(swiper)} className="h-full" autoplay={{ delay: 5000, disableOnInteraction: false }} modules={[Autoplay, Pagination, Navigation]} > {props.data.map((slide) => slide.imageUrl ? ( // Slide with image background {slide.title} {slide.title && slide.description && (

{slide.title}

{slide.tags.map((tag) => ( {tag} ))}

{slide.description}

{slide.isClickable && ( )}
)}
) : ( // Fallback for slides without image

{slide.title}

{slide.tags.map((tag) => ( {tag} ))}

{slide.description}

{slide.isClickable && ( )}
), )}
); }; export default HeroSwiper;