import React, { useState } from 'react'; import { Box, Button, Group } from '@mantine/core'; import { formatKB } from '../../utils/networkUtils.js'; const SizedInstallButton = ({ latest_size, children, color, loading, disabled, onClick, ...buttonProps }) => { const [hovered, setHovered] = useState(false); if (!Number.isFinite(latest_size) || latest_size <= 0) { return ( ); } const isDisabled = disabled || loading; const colorVar = color ? `var(--mantine-color-${color}-filled)` : 'var(--mantine-primary-color-filled)'; return ( { if (!isDisabled) setHovered(true); }} onMouseLeave={() => setHovered(false)} > {formatKB(latest_size)} ); }; export default SizedInstallButton;