import { useState } from 'react'; import '../styles/ClickArea.css'; interface ClickAreaProps { onCurrencyClick: () => void; } const ClickArea = ({ onCurrencyClick }: ClickAreaProps) => { const [clickEffect, setClickEffect] = useState<{x: number, y: number, visible: boolean}>({ x: 0, y: 0, visible: false }); const handleClick = (e: React.MouseEvent) => { // Get click coordinates relative to the clicked element const rect = e.currentTarget.getBoundingClientRect(); const x = e.clientX - rect.left; const y = e.clientY - rect.top; // Show effect at click position setClickEffect({ x, y, visible: true }); // Hide effect after animation completes setTimeout(() => { setClickEffect(prev => ({...prev, visible: false})); }, 300); // Trigger the actual currency click onCurrencyClick(); }; return (
CLICK ME
{clickEffect.visible && (
)}
); }; export default ClickArea;