'use client'; import * as React from 'react'; import { motion, type Variants } from 'motion/react'; import { getVariants, useAnimateIconContext, IconWrapper, type IconProps, } from '@/registry/icons/icon'; type MessageCircleMoreProps = IconProps; const animations = { default: { group: { initial: { rotate: 0, }, animate: { transformOrigin: 'bottom left', rotate: [0, 8, -8, 2, 0], transition: { ease: 'easeInOut', duration: 0.8, times: [0, 0.4, 0.6, 0.8, 1], }, }, }, path: {}, line1: { initial: { y1: 12, y2: 12, }, animate: { y1: [12, 10.5, 12], y2: [12, 13.5, 12], transition: { ease: 'easeInOut', duration: 0.6, delay: 0.2 }, }, }, line2: { initial: { y1: 12, y2: 12, }, animate: { y1: [12, 10.5, 12], y2: [12, 13.5, 12], transition: { ease: 'easeInOut', duration: 0.6, delay: 0.1 }, }, }, line3: { initial: { y1: 12, y2: 12, }, animate: { y1: [12, 10.5, 12], y2: [12, 13.5, 12], transition: { ease: 'easeInOut', duration: 0.6 }, }, }, } satisfies Record, pulse: { group: {}, path: {}, line1: { initial: { scale: 1, }, animate: { scale: [1, 1.5, 1], transition: { duration: 1, delay: 0.4, repeat: Infinity, ease: 'easeInOut', }, }, }, line2: { initial: { scale: 1, }, animate: { scale: [1, 1.5, 1], transition: { duration: 1, delay: 0.2, repeat: Infinity, ease: 'easeInOut', }, }, }, line3: { initial: { scale: 1, }, animate: { scale: [1, 1.5, 1], transition: { duration: 1, repeat: Infinity, ease: 'easeInOut', }, }, }, } satisfies Record, jump: { group: {}, path: {}, line1: { initial: { y: 0, }, animate: { y: [-0.75, 0.75], transition: { duration: 0.8, delay: 0.4, repeat: Infinity, repeatType: 'mirror', ease: 'easeInOut', }, }, }, line2: { initial: { y: 0, }, animate: { y: [-0.75, 0.75], transition: { duration: 0.8, delay: 0.2, repeat: Infinity, repeatType: 'mirror', ease: 'easeInOut', }, }, }, line3: { initial: { y: 0, }, animate: { y: [-0.75, 0.75], transition: { duration: 0.8, repeat: Infinity, repeatType: 'mirror', ease: 'easeInOut', }, }, }, } satisfies Record, } as const; function IconComponent({ size, ...props }: MessageCircleMoreProps) { const { controls } = useAnimateIconContext(); const variants = getVariants(animations); return ( ); } function MessageCircleMore(props: MessageCircleMoreProps) { return ; } export { animations, MessageCircleMore, MessageCircleMore as MessageCircleMoreIcon, type MessageCircleMoreProps, type MessageCircleMoreProps as MessageCircleMoreIconProps, };