import { useState, useEffect } from "react"; interface PriceSelectionProps { selectedPrice: number | null; onSelect: (price: number) => void; } export function PriceSelection({ selectedPrice, onSelect }: PriceSelectionProps) { const presets = [0.05, 0.1, 0.2, 0.5, 1.0]; const [inputValue, setInputValue] = useState(""); const MIN_AMOUNT = 0.05; useEffect(() => { if (selectedPrice !== null) { setInputValue(selectedPrice.toString()); } }, [selectedPrice]); const handleInputChange = (e: React.ChangeEvent) => { const value = e.target.value; setInputValue(value); const parsed = parseFloat(value); if (!isNaN(parsed) && parsed >= MIN_AMOUNT) { onSelect(parsed); } }; const handlePresetClick = (value: number) => { onSelect(value); setInputValue(value.toString()); }; return (
{presets.map((price) => ( ))}
); }