"use client"; import { useEffect, useState } from "react"; import { cn } from "@/utils/cn"; const asciiPatterns = [ `· · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · ·`, `· · · · · · · · · · · · · · · · · · · · · · · · ▪ · · · · · · · · ▪ · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · ▪ · · · · · · · · ▪ · · · · · ·`, `· · · · · · · · · · · · · · · · · · · · · · · ▪ ▄ ▪ · · · · · · ▪ ▄ ▪ · · · · · · · · ▪ · · · · · · · · ▪ · · · · · · · · · · · · · · · · · · · · · · · · · · · · ▪ ▄ ▪ · · · · · · ▪ ▄ ▪ · · · · ·`, `· · · · · · · · · · · · · · · · · · · · · · ▪ ▄ █ ▄ ▪ · · · · ▪ ▄ █ ▄ ▪ · · · · · · ▪ ▄ ▪ · · · · · · ▪ ▄ ▪ · · · · · · · · ▪ · · · · · · · · · ▪ · · · · · · · ▪ ▄ █ ▄ ▪ · · · · ▪ ▄ █ ▄ ▪ · · · ·`, ]; interface AsciiBackgroundProps { className?: string; variant?: "dots" | "grid" | "flame"; } export function AsciiBackground({ className, variant = "dots", }: AsciiBackgroundProps) { const [frameIndex, setFrameIndex] = useState(0); useEffect(() => { const interval = setInterval(() => { setFrameIndex((prev) => (prev + 1) % asciiPatterns.length); }, 2000); return () => clearInterval(interval); }, []); return (
        {asciiPatterns[frameIndex]}
      
); }