'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 BellRingProps = IconProps; const animations = { default: { group: { initial: { rotate: 0, }, animate: { rotate: [0, 20, -10, 10, -5, 3, 0], transformOrigin: 'top center', transition: { duration: 0.9, ease: 'easeInOut' }, }, }, path1: { initial: { x: 0, }, animate: { x: [0, -6, 5, -5, 4, -3, 2, 0], transition: { duration: 1.1, ease: 'easeInOut' }, }, }, path2: { initial: { y: 0, scale: 1, }, animate: { y: [0, 1, -0.5, 0.5, -0.25, 0], scale: [1, 0.8, 0.9, 1, 1], transition: { duration: 0.8, ease: 'easeInOut' }, }, }, path3: { initial: { y: 0, scale: 1, }, animate: { y: [0, -0.5, 1, -0.5, 0.25, 0], scale: [1, 0.8, 0.9, 1, 1], transition: { duration: 0.8, ease: 'easeInOut' }, }, }, path4: {}, } satisfies Record, } as const; function IconComponent({ size, ...props }: BellRingProps) { const { controls } = useAnimateIconContext(); const variants = getVariants(animations); return ( ); } function BellRing(props: BellRingProps) { return ; } export { animations, BellRing, BellRing as BellRingIcon, type BellRingProps, type BellRingProps as BellRingIconProps, };