import React from "react"; interface ShineButtonProps { label?: string; onClick?: () => void; className?: string; size?: "sm" | "md" | "lg"; bgColor?: string; // Can be hex or gradient } const sizeStyles: Record< NonNullable, { padding: string; fontSize: string } > = { sm: { padding: "0.5rem 1rem", fontSize: "0.875rem" }, md: { padding: "0.6rem 1.4rem", fontSize: "1rem" }, lg: { padding: "0.8rem 1.8rem", fontSize: "1.125rem" }, }; export const ShineButton: React.FC = ({ label = "Shine now", onClick, className = "", size = "md", bgColor = "linear-gradient(325deg, hsl(217 100% 56%) 0%, hsl(194 100% 69%) 55%, hsl(217 100% 56%) 90%)", }) => { const { padding, fontSize } = sizeStyles[size]; // Determine whether to use solid color or gradient const backgroundImage = bgColor.startsWith("linear-gradient") ? bgColor : `linear-gradient(to right, ${bgColor}, ${bgColor})`; return ( ); };