Files
bd539cad-e5a1-45ab-8774-c07…/src/components/cardStack/hooks/useDepth3DAnimation.ts

26 lines
736 B
TypeScript

'use client';
import { useEffect, useState } from 'react';
export const useDepth3DAnimation = (elementRef: React.RefObject<HTMLElement>) => {
const [isActive, setIsActive] = useState(false);
useEffect(() => {
if (!elementRef.current) return;
const handleMouseEnter = () => setIsActive(true);
const handleMouseLeave = () => setIsActive(false);
const element = elementRef.current;
element.addEventListener('mouseenter', handleMouseEnter);
element.addEventListener('mouseleave', handleMouseLeave);
return () => {
element.removeEventListener('mouseenter', handleMouseEnter);
element.removeEventListener('mouseleave', handleMouseLeave);
};
}, [elementRef]);
return { isActive };
};