'use client' import { useEffect, useState } from 'react' import { ny } from '@/lib/utils' interface TypingAnimationProps { text: string duration?: number className?: string } export default function TypingAnimation({ text, duration = 200, className, }: TypingAnimationProps) { const [displayedText, setDisplayedText] = useState('') const [i, setI] = useState(0) useEffect(() => { const typingEffect = setInterval(() => { if (i < text.length) { setDisplayedText(text.substring(0, i + 1)) setI(i + 1) } else { clearInterval(typingEffect) } }, duration) return () => { clearInterval(typingEffect) } }, [duration, i]) return (

{displayedText || text}

) }