import { motion } from 'framer-motion';
import type { ReactNode } from 'react';
interface AnimatedContainerProps {
children: ReactNode;
delay?: number;
className?: string;
direction?: 'up' | 'left' | 'right' | 'fade';
}
const variants = {
up: {
hidden: { opacity: 0, y: 30 },
visible: { opacity: 1, y: 0 },
},
left: {
hidden: { opacity: 0, x: -30 },
visible: { opacity: 1, x: 0 },
},
right: {
hidden: { opacity: 0, x: 30 },
visible: { opacity: 1, x: 0 },
},
fade: {
hidden: { opacity: 0 },
visible: { opacity: 1 },
},
};
export default function AnimatedContainer({
children,
delay = 0,
className = '',
direction = 'up',
}: AnimatedContainerProps) {
return (
{children}
);
}
// Stagger container for grid cards
export function StaggerContainer({
children,
className = '',
}: {
children: ReactNode;
className?: string;
}) {
return (
{children}
);
}
// Individual stagger item
export function StaggerItem({
children,
className = '',
}: {
children: ReactNode;
className?: string;
}) {
return (
{children}
);
}