"use client";
import { cn } from "@/utils/cn";
import { useState, useEffect } from "react";
import ScrambleText from "@/components/ui/motion/scramble-text";
export const Shimmer = ({
className,
text = "Loading...",
}: {
className?: string;
text?: string;
}) => {
const [isInView, setIsInView] = useState(false);
useEffect(() => {
setIsInView(true);
}, []);
return (
);
};
export const ShimmerSingle = ({
className,
text,
}: {
className?: string;
text?: string;
}) => {
const [isInView, setIsInView] = useState(false);
useEffect(() => {
setIsInView(true);
}, []);
return (
);
};
// Chart shimmer with fire glow effect
export const ChartShimmer = ({
className,
text = "Loading chart data...",
}: {
className?: string;
text?: string;
}) => {
const [isInView, setIsInView] = useState(false);
useEffect(() => {
setIsInView(true);
}, []);
return (
{/* Subtle fire glow background */}
{/* Loading text */}
{text && (
)}
{/* Chart bars */}
{Array.from({ length: 8 }, (_, i) => (
))}
);
};