import Image from "next/image"; import React from "react"; import { fadeIn, zoomIn, slideFromLeft, slideFromRight } from "../animationvariants.js"; import { Button } from "react-bootstrap"; import { Swiper, SwiperSlide } from "swiper/react"; import { Navigation, Autoplay, Parallax } from "swiper/modules"; import { motion } from "framer-motion"; // Import Swiper styles import "swiper/css"; import "swiper/css/pagination"; import "swiper/css/navigation"; import { cleanImage } from "../../services/imageHandling.js"; const LetDiscover = ({ categories }) => { return ( <> <section className="let-discover-session"> <div className="container"> <div className="row"> <div className="col-12"> {/* <motion.div variants={slideFromRight(0.4)} initial={"hidden"} whileInView={"show"} viewport={{ once: false, amount: 0.2 }}> your text or div will come here </motion.div> */} <div className="head-btn"> <motion.div variants={slideFromRight(0.4)} initial={"hidden"} whileInView={"show"} viewport={{ once: false, amount: 0.2 }}> <div className="head01"> <div className="title">Let’s </div> <h2>Discover</h2> </div> </motion.div> <div className="view-all-btn"> <Button href="/listing" variant="primary">View All</Button> </div> </div> </div> </div> <div className="row"> <div className="col-12"> <div className="let-discover-carousal position-relative"> <Swiper modules={[Autoplay, Navigation]} slidesPerView={3} // autoplay={{ // delay: 7000, // disableOnInteraction: false, // }} navigation={{ nextEl: ".discover-swiper-button-next", prevEl: ".discover-swiper-button-prev" }} speed={1200} breakpoints={{ 640: { slidesPerView: 3, spaceBetween: 20 }, 768: { slidesPerView: 4, spaceBetween: 20 }, 1024: { slidesPerView: 6, spaceBetween: 20 } }} className="mySwiper01 mySwiper02" > <SwiperSlide> <motion.div variants={zoomIn("left", 0.3)} initial={"hidden"} whileInView={"show"} viewport={{ once: false, amount: 0.2 }}> <a href=""> <span className="image-container"> <Image layout="fill" alt="" className="image img-fluid" src="/images/discover/03.png" /> </span> <div className="title">ALL</div> </a> </motion.div> </SwiperSlide> {categories?.data && categories.data.map((data, index) => { return ( <SwiperSlide key={data?.id}> <motion.div variants={zoomIn("left", 0.3)} initial={"hidden"} whileInView={"show"} viewport={{ once: false, amount: 0.2 }}> <a href="" > <span className="image-container"> <Image layout="fill" alt="" className="image img-fluid" src={cleanImage(data?.attributes?.image?.data?.attributes)} /> </span> <div className="title">{data?.attributes?.name}</div> </a> </motion.div> </SwiperSlide> ); })} </Swiper> <div className="swiper-nav"> <div className="navbutton d-flex justify-content-between "> <button className="discover-swiper-button-prev arrow" aria-label="Prev"> <span className="image-container"> <Image layout="fill" alt="" className="image img-fluid" src="/images/icons/arrow-left.svg" /> </span> </button> <button className="discover-swiper-button-next arrow" aria-label="Next"> <span className="image-container"> <Image layout="fill" alt="" className="image img-fluid" src="/images/icons/arrow-right.svg" /> </span> </button> </div> </div> </div> </div> </div> </div> </section> </> ); }; export default LetDiscover;