import { Button } from "@/components/ui/button"; import { basePath } from "@/config/siteConfig"; import { Script } from "@/lib/types"; import { BookOpenText, Code, Globe } from "lucide-react"; import Link from "next/link"; const generateSourceUrl = (slug: string, type: string) => { const baseUrl = `https://raw.githubusercontent.com/community-scripts/${basePath}/main`; return type === "ct" ? `${baseUrl}/install/${slug}-install.sh` : `${baseUrl}/${type}/${slug}.sh`; }; interface ButtonLinkProps { href: string; icon: React.ReactNode; text: string; } const ButtonLink = ({ href, icon, text }: ButtonLinkProps) => ( ); export default function Buttons({ item }: { item: Script }) { const buttons = [ item.website && { href: item.website, icon: , text: "Website", }, item.documentation && { href: item.documentation, icon: , text: "Documentation", }, { href: generateSourceUrl(item.slug, item.type), icon: , text: "Source Code", }, ].filter(Boolean) as ButtonLinkProps[]; return (
{buttons.map((props, index) => ( ))}
); }