import { CornerRightUp } from 'lucide-react' import { useRouter } from 'next/router' import { useRef, useState } from 'react' import { Button, Tabs } from 'ui' // Import Swiper React components import { Swiper, SwiperSlide } from 'swiper/react' // Import Swiper styles import 'swiper/css' import { useInView } from 'framer-motion' import Image from 'next/image' import TextLink from '../TextLink' import ImageCarouselStyles from './ImageCarousel.module.css' interface Content { title: string label?: string img_url?: string text?: string cta?: string url?: string youtube_id?: string } interface ImageCarouselProps { content: Content[] footer?: React.ReactNode altTabView?: boolean } function ImageCarousel(props: ImageCarouselProps) { const sectionRef = useRef(null) const isInView = useInView(sectionRef, { margin: '75%', once: true }) // base path for images const { basePath } = useRouter() // store API swiper instance const [imageSwiper, setImageSwiper] = useState(undefined) const [swiperDetails, setSwiperDetails] = useState(undefined) const [imageSwiperActiveIndex, setImageSwiperActiveIndex] = useState(0) function handleImageSwiperNav(e: number) { setImageSwiperActiveIndex(e) // @ts-ignore imageSwiper.slideTo(e) // @ts-ignore swiperDetails.slideTo(e) } const details = (

Allow fetch something

This would only allow the authenticated user access to a folder that is named after their own account UID. This is useful for things like profile images.

) return (
handleImageSwiperNav(Number(id))} > {props.content.map((content: Content, i) => { return ( ) })}
{props.content.map((content: Content, i: number) => { return ( {content.img_url && ( {content.title} )} {isInView && content.youtube_id && (