'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 SettingsProps = IconProps; const animations = { default: { group: { initial: { rotate: 0, }, animate: { rotate: [0, 90, 180], transition: { duration: 1.25, ease: 'easeInOut', }, }, }, path: {}, circle: {}, } satisfies Record, 'default-loop': { group: { initial: { rotate: 0, }, animate: { rotate: [0, 90, 180, 270, 360], transition: { duration: 2.5, ease: 'easeInOut', repeat: Infinity, repeatType: 'loop', }, }, }, path: {}, circle: {}, } satisfies Record, rotate: { group: { initial: { rotate: 0, }, animate: { rotate: 360, transition: { duration: 2, ease: 'linear', repeat: Infinity, repeatType: 'loop', }, }, }, path: {}, circle: {}, } satisfies Record, } as const; function IconComponent({ size, ...props }: SettingsProps) { const { controls } = useAnimateIconContext(); const variants = getVariants(animations); return ( ); } function Settings(props: SettingsProps) { return ; } export { animations, Settings, Settings as SettingsIcon, type SettingsProps, type SettingsProps as SettingsIconProps, };