import { ArrowUp, Info } from "lucide-react"; import { useState } from "react"; // Reusable Metric Card Component const MetricCard = ({ icon: Icon, img: Img, value, label, tooltipText, valueChange, size, extraStyle, disabled }: { icon?: any, img?: any, value?: any, label?: any, tooltipText?: any, valueChange?: any, size?: any, extraStyle?: any, disabled?: any }) => { const [isHovered, setIsHovered] = useState(false); if (Img) { return (
setIsHovered(true)} onMouseLeave={() => setIsHovered(false)}>
Img
{isHovered && (
{/* Tooltip triangle */}
{tooltipText}
)}
) } return (
setIsHovered(true)} onMouseLeave={() => setIsHovered(false)} > {Icon && (
)}
{!tooltipText && label} {value} {valueChange && (
{Icon && ( )} {valueChange}
)} {tooltipText && (
{label}
{isHovered && (
{/* Tooltip triangle */}
{tooltipText}
)}
)}
); }; export default MetricCard