import { useState } from "react"; import { Plus } from "lucide-react"; import TextAnimation from "@/components/ui/TextAnimation"; import ImageOrVideo from "@/components/ui/ImageOrVideo"; import GridOrCarousel from "@/components/ui/GridOrCarousel"; import Button from "@/components/ui/Button"; import ScrollReveal from "@/components/ui/ScrollReveal"; type FeatureItem = { title: string; descriptions: string[]; } & ({ imageSrc: string; videoSrc?: never } | { videoSrc: string; imageSrc?: never }); interface FeaturesFlipCardsProps { tag: string; title: string; description: string; primaryButton?: { text: string; href: string }; secondaryButton?: { text: string; href: string }; items: FeatureItem[]; } const FeatureFlipCard = ({ item }: { item: FeatureItem }) => { const [isFlipped, setIsFlipped] = useState(false); return (
setIsFlipped(!isFlipped)} >

{item.title}

{item.title}

{item.descriptions.map((desc, index) => (

{desc}

))}
); }; const FeaturesFlipCards = ({ tag, title, description, primaryButton, secondaryButton, items, }: FeaturesFlipCardsProps) => { return (

{tag}

{(primaryButton || secondaryButton) && (
{primaryButton &&
)}
{items.map((item) => ( ))}
); }; export default FeaturesFlipCards;