"use client";

import { motion } from "framer-motion";
import { ReactNode, memo } from "react";

interface MotionWrapperProps {
  children: ReactNode;
}

function MotionWrapper({ children }: MotionWrapperProps) {
  return (
    <motion.div
      initial="hidden"
      animate="visible"
      variants={{
        hidden: { opacity: 0, y: 12 },
        visible: { opacity: 1, y: 0 },
      }}
      transition={{ duration: 0.4, ease: "easeOut" }}
    >
      {children}
    </motion.div>
  );
}

export default memo(MotionWrapper);
