/**
 * Returns animation variants for message list items, or undefined
 * when animations should be disabled (reduced motion or shouldAnimate=false).
 */
const getMessageItemVariants = (shouldReduceMotion, shouldAnimate) => {
    if (shouldReduceMotion || !shouldAnimate)
        return undefined;
    return {
        initial: {
            opacity: 0,
            y: 10,
        },
        animate: {
            opacity: 1,
            y: 0,
            transition: {
                duration: 0.3,
                ease: [0.2, 0.65, 0.3, 0.9],
            },
        },
        exit: {
            opacity: 0,
            scale: 0.97,
            transition: {
                duration: 0.15,
                ease: 'easeIn',
            },
        },
    };
};

export { getMessageItemVariants };
