'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 MenuProps = IconProps; const animations = { default: { line1: { initial: { rotate: 0, x: 0, y: 0, }, animate: { rotate: -45, x: -2.35, y: 0.35, transformOrigin: 'top right', transition: { type: 'spring', stiffness: 200, damping: 20, }, }, }, line2: { initial: { opacity: 1, }, animate: { opacity: 0, transition: { ease: 'easeInOut', duration: 0.2, }, }, }, line3: { initial: { rotate: 0, x: 0, y: 0, }, animate: { rotate: 45, x: -2.35, y: -0.35, transformOrigin: 'bottom right', transition: { type: 'spring', stiffness: 200, damping: 20, }, }, }, } satisfies Record, } as const; function IconComponent({ size, ...props }: MenuProps) { const { controls } = useAnimateIconContext(); const variants = getVariants(animations); return ( ); } function Menu(props: MenuProps) { return ; } export { animations, Menu, Menu as MenuIcon, type MenuProps, type MenuProps as MenuIconProps, };