import { ArrowUpRight } from "lucide-react"; import Button from "@/components/ui/Button"; import TextAnimation from "@/components/ui/TextAnimation"; import ImageOrVideo from "@/components/ui/ImageOrVideo"; import GridOrCarousel from "@/components/ui/GridOrCarousel"; import ScrollReveal from "@/components/ui/ScrollReveal"; import { useButtonClick } from "@/hooks/useButtonClick"; type FeatureItem = { title: string; tags: string[]; href?: string; onClick?: () => void; } & ({ imageSrc: string; videoSrc?: never } | { videoSrc: string; imageSrc?: never }); const ArrowButton = ({ href, onClick }: { href?: string; onClick?: () => void }) => { const handleClick = useButtonClick(href, onClick); return ( ); }; interface FeaturesArrowCardsProps { tag: string; title: string; description: string; primaryButton?: { text: string; href: string }; secondaryButton?: { text: string; href: string }; items: FeatureItem[]; } const FeaturesArrowCards = ({ tag, title, description, primaryButton, secondaryButton, items, }: FeaturesArrowCardsProps) => { return ( {tag} {(primaryButton || secondaryButton) && ( {primaryButton && } {secondaryButton && } )} {items.map((item) => ( {item.title} {item.tags.map((itemTag) => ( {itemTag} ))} ))} ); }; export default FeaturesArrowCards;
{tag}
{itemTag}