@animateicons/react 0.1.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/LICENSE +21 -0
- package/README.md +107 -0
- package/dist/chunk-B7MM7JD4.js +6 -0
- package/dist/chunk-B7MM7JD4.js.map +1 -0
- package/dist/huge.cjs +3682 -0
- package/dist/huge.cjs.map +1 -0
- package/dist/huge.d.cts +400 -0
- package/dist/huge.d.ts +400 -0
- package/dist/huge.js +3647 -0
- package/dist/huge.js.map +1 -0
- package/dist/index.cjs +5 -0
- package/dist/index.cjs.map +1 -0
- package/dist/index.d.cts +11 -0
- package/dist/index.d.ts +11 -0
- package/dist/index.js +4 -0
- package/dist/index.js.map +1 -0
- package/dist/lucide.cjs +32272 -0
- package/dist/lucide.cjs.map +1 -0
- package/dist/lucide.d.cts +2980 -0
- package/dist/lucide.d.ts +2980 -0
- package/dist/lucide.js +32022 -0
- package/dist/lucide.js.map +1 -0
- package/package.json +120 -0
package/dist/huge.js.map
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../icons/huge/activity-icon.tsx","../../icons/huge/bookmark-check-icon.tsx","../../icons/huge/bookmark-icon.tsx","../../icons/huge/bookmark-minus-icon.tsx","../../icons/huge/bookmark-remove-icon.tsx","../../icons/huge/check-check-icon.tsx","../../icons/huge/check-icon.tsx","../../icons/huge/chevron-right-icon.tsx","../../icons/huge/compass-0-1-icon.tsx","../../icons/huge/compass-0-2-icon.tsx","../../icons/huge/copy-icon.tsx","../../icons/huge/dashboard-0-1-icon.tsx","../../icons/huge/dashboard-0-2-icon.tsx","../../icons/huge/dashboard-0-3-icon.tsx","../../icons/huge/discord-icon.tsx","../../icons/huge/download-icon.tsx","../../icons/huge/eye-icon.tsx","../../icons/huge/facebook-icon.tsx","../../icons/huge/figma-icon.tsx","../../icons/huge/github-icon.tsx","../../icons/huge/heart-icon.tsx","../../icons/huge/loading-0-1-icon.tsx","../../icons/huge/loading-0-2-icon.tsx","../../icons/huge/menu-0-1-icon.tsx","../../icons/huge/menu-0-2-icon.tsx","../../icons/huge/mouse-pointer-click-0-1-icon.tsx","../../icons/huge/new-twitter-icon.tsx","../../icons/huge/notification-icon.tsx","../../icons/huge/notification-off-icon.tsx","../../icons/huge/search-icon.tsx","../../icons/huge/settings-0-1-icon.tsx","../../icons/huge/settings-0-2-icon.tsx","../../icons/huge/twitter-icon.tsx"],"names":["forwardRef","useAnimation","useReducedMotion","useRef","useImperativeHandle","useCallback","jsx","motion","jsxs"],"mappings":"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","file":"huge.js","sourcesContent":["\"use client\";\n\nimport { cn } from \"@/lib/utils\";\nimport type { HTMLMotionProps, Variants } from \"motion/react\";\nimport { motion, useAnimation, useReducedMotion } from \"motion/react\";\nimport { forwardRef, useCallback, useImperativeHandle, useRef } from \"react\";\n\nexport interface ActivityIconHandle {\n startAnimation: () => void;\n stopAnimation: () => void;\n}\n\ninterface ActivityIconProps extends HTMLMotionProps<\"div\"> {\n size?: number;\n duration?: number;\n isAnimated?: boolean;\n color?: string;\n}\n\nconst ActivityIcon = forwardRef<ActivityIconHandle, ActivityIconProps>(\n (\n {\n onMouseEnter,\n onMouseLeave,\n className,\n size = 24,\n duration = 1,\n isAnimated = true,\n color,\n ...props\n },\n ref,\n ) => {\n const controls = useAnimation();\n const reduced = useReducedMotion();\n const isControlled = useRef(false);\n\n useImperativeHandle(ref, () => {\n isControlled.current = true;\n return {\n startAnimation: () =>\n reduced ? controls.start(\"normal\") : controls.start(\"animate\"),\n stopAnimation: () => controls.start(\"normal\"),\n };\n });\n\n const handleEnter = useCallback(\n (e?: React.MouseEvent<HTMLDivElement>) => {\n if (!isAnimated || reduced) return;\n if (!isControlled.current) controls.start(\"animate\");\n else onMouseEnter?.(e as any);\n },\n [controls, reduced, isAnimated, onMouseEnter],\n );\n\n const handleLeave = useCallback(\n (e: React.MouseEvent<HTMLDivElement>) => {\n if (!isControlled.current) {\n controls.start(\"normal\");\n } else {\n onMouseLeave?.(e as any);\n }\n },\n [controls, onMouseLeave],\n );\n\n const activityVariants: Variants = {\n normal: {\n strokeDasharray: \"none\",\n strokeDashoffset: 0,\n opacity: 1,\n },\n animate: {\n strokeDasharray: \"60 120\",\n strokeDashoffset: [0, -180],\n transition: {\n duration: 1.4 * duration,\n ease: \"linear\",\n repeat: Infinity,\n },\n },\n };\n\n return (\n <motion.div\n className={cn(\"inline-flex items-center justify-center\", className)}\n onMouseEnter={handleEnter}\n onMouseLeave={handleLeave}\n {...props}\n style={{ color, ...props.style }}\n >\n <motion.svg\n xmlns=\"http://www.w3.org/2000/svg\"\n width={size}\n height={size}\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke=\"currentColor\"\n strokeWidth=\"2\"\n strokeLinecap=\"round\"\n strokeLinejoin=\"round\"\n initial=\"normal\"\n animate={controls}\n >\n <motion.path\n d=\"M3.00012 12H7.34073C7.74075 12 8.10229 12.2384 8.25987 12.6061L10.8436 18.6348C10.9386 18.8563 11.1564 19 11.3975 19C11.7303 19 12.0001 18.7302 12.0001 18.3974V5.60262C12.0001 5.2698 12.2699 5 12.6027 5C12.8438 5 13.0617 5.14367 13.1566 5.36526L15.74 11.3939C15.8976 11.7616 16.2591 12 16.6592 12H20.9998\"\n variants={activityVariants}\n />\n </motion.svg>\n </motion.div>\n );\n },\n);\n\nActivityIcon.displayName = \"ActivityIcon\";\nexport { ActivityIcon };\n","\"use client\";\n\nimport { cn } from \"@/lib/utils\";\nimport type { HTMLMotionProps, Variants } from \"motion/react\";\nimport { motion, useAnimation, useReducedMotion } from \"motion/react\";\nimport { forwardRef, useCallback, useImperativeHandle, useRef } from \"react\";\n\nexport interface BookmarkCheckIconHandle {\n startAnimation: () => void;\n stopAnimation: () => void;\n}\n\ninterface BookmarkCheckIconProps extends HTMLMotionProps<\"div\"> {\n size?: number;\n duration?: number;\n isAnimated?: boolean;\n color?: string;\n}\n\nconst BookmarkCheckIcon = forwardRef<\n BookmarkCheckIconHandle,\n BookmarkCheckIconProps\n>(\n (\n {\n onMouseEnter,\n onMouseLeave,\n className,\n size = 24,\n duration = 1,\n isAnimated = true,\n color,\n ...props\n },\n ref,\n ) => {\n const controls = useAnimation();\n const reduced = useReducedMotion();\n const isControlled = useRef(false);\n\n useImperativeHandle(ref, () => {\n isControlled.current = true;\n return {\n startAnimation: () =>\n reduced ? controls.start(\"normal\") : controls.start(\"animate\"),\n stopAnimation: () => controls.start(\"normal\"),\n };\n });\n\n const handleEnter = useCallback(\n (e?: React.MouseEvent<HTMLDivElement>) => {\n if (!isAnimated || reduced) return;\n if (!isControlled.current) controls.start(\"animate\");\n else onMouseEnter?.(e as any);\n },\n [controls, reduced, isAnimated, onMouseEnter],\n );\n\n const handleLeave = useCallback(\n (e?: React.MouseEvent<HTMLDivElement>) => {\n if (!isControlled.current) controls.start(\"normal\");\n else onMouseLeave?.(e as any);\n },\n [controls, onMouseLeave],\n );\n\n const bookmarkVariants: Variants = {\n normal: {\n y: 0,\n scaleX: 1,\n scaleY: 1,\n },\n animate: {\n y: [0, -4, 0],\n scaleY: [1, 1.1, 0.95, 1],\n scaleX: [1, 0.97, 1.02, 1],\n transition: {\n duration: 0.45 * duration,\n ease: \"easeOut\",\n },\n },\n };\n\n const checkVariants: Variants = {\n normal: { pathLength: 1, opacity: 1 },\n animate: {\n pathLength: [0, 1],\n opacity: 1,\n transition: { duration: 0.8 * duration, ease: \"easeInOut\" },\n },\n };\n\n return (\n <motion.div\n className={cn(\"inline-flex items-center justify-center\", className)}\n onMouseEnter={handleEnter}\n onMouseLeave={handleLeave}\n {...props}\n style={{ color, ...props.style }}\n >\n <motion.svg\n xmlns=\"http://www.w3.org/2000/svg\"\n width={size}\n height={size}\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke=\"currentColor\"\n strokeWidth=\"2\"\n strokeLinecap=\"round\"\n strokeLinejoin=\"round\"\n initial=\"normal\"\n animate={controls}\n variants={bookmarkVariants}\n >\n <path d=\"M4 17.9808V9.70753C4 6.07416 4 4.25748 5.17157 3.12874C6.34315 2 8.22876 2 12 2C15.7712 2 17.6569 2 18.8284 3.12874C20 4.25748 20 6.07416 20 9.70753V17.9808C20 20.2867 20 21.4396 19.2272 21.8523C17.7305 22.6514 14.9232 19.9852 13.59 19.1824C12.8168 18.7168 12.4302 18.484 12 18.484C11.5698 18.484 11.1832 18.7168 10.41 19.1824C9.0768 19.9852 6.26947 22.6514 4.77285 21.8523C4 21.4396 4 20.2867 4 17.9808Z\" />\n\n <motion.path\n d=\"M9 11.3333C9 11.3333 9.875 11.3333 10.75 13C10.75 13 13.5294 8.83333 16 8\"\n variants={checkVariants}\n />\n </motion.svg>\n </motion.div>\n );\n },\n);\n\nBookmarkCheckIcon.displayName = \"BookmarkCheckIcon\";\nexport { BookmarkCheckIcon };\n","\"use client\";\n\nimport { cn } from \"@/lib/utils\";\nimport type { HTMLMotionProps, Variants } from \"motion/react\";\nimport { motion, useAnimation, useReducedMotion } from \"motion/react\";\nimport { forwardRef, useCallback, useImperativeHandle, useRef } from \"react\";\n\nexport interface BookmarkIconHandle {\n startAnimation: () => void;\n stopAnimation: () => void;\n}\n\ninterface BookmarkIconProps extends HTMLMotionProps<\"div\"> {\n size?: number;\n duration?: number;\n isAnimated?: boolean;\n color?: string;\n}\n\nconst BookmarkIcon = forwardRef<BookmarkIconHandle, BookmarkIconProps>(\n (\n {\n onMouseEnter,\n onMouseLeave,\n className,\n size = 24,\n duration = 1,\n isAnimated = true,\n color,\n ...props\n },\n ref,\n ) => {\n const controls = useAnimation();\n const reduced = useReducedMotion();\n const isControlled = useRef(false);\n\n useImperativeHandle(ref, () => {\n isControlled.current = true;\n return {\n startAnimation: () =>\n reduced ? controls.start(\"normal\") : controls.start(\"animate\"),\n stopAnimation: () => controls.start(\"normal\"),\n };\n });\n\n const handleEnter = useCallback(\n (e?: React.MouseEvent<HTMLDivElement>) => {\n if (!isAnimated || reduced) return;\n if (!isControlled.current) controls.start(\"animate\");\n else onMouseEnter?.(e as any);\n },\n [controls, reduced, isAnimated, onMouseEnter],\n );\n\n const handleLeave = useCallback(\n (e?: React.MouseEvent<HTMLDivElement>) => {\n if (!isControlled.current) controls.start(\"normal\");\n else onMouseLeave?.(e as any);\n },\n [controls, onMouseLeave],\n );\n\n const bookmarkVariants: Variants = {\n normal: {\n y: 0,\n scaleX: 1,\n scaleY: 1,\n },\n animate: {\n y: [0, -4, 0],\n scaleY: [1, 1.1, 0.95, 1],\n scaleX: [1, 0.97, 1.02, 1],\n transition: {\n duration: 0.45 * duration,\n ease: \"easeOut\",\n },\n },\n };\n\n return (\n <motion.div\n className={cn(\"relative inline-flex\", className)}\n onMouseEnter={handleEnter}\n onMouseLeave={handleLeave}\n {...props}\n style={{ color, ...props.style }}\n >\n <motion.svg\n xmlns=\"http://www.w3.org/2000/svg\"\n width={size}\n height={size}\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke=\"currentColor\"\n strokeWidth=\"2\"\n strokeLinecap=\"round\"\n strokeLinejoin=\"round\"\n animate={controls}\n initial=\"normal\"\n variants={bookmarkVariants}\n >\n <path d=\"M4 17.9808V9.70753C4 6.07416 4 4.25748 5.17157 3.12874C6.34315 2 8.22876 2 12 2C15.7712 2 17.6569 2 18.8284 3.12874C20 4.25748 20 6.07416 20 9.70753V17.9808C20 20.2867 20 21.4396 19.2272 21.8523C17.7305 22.6514 14.9232 19.9852 13.59 19.1824C12.8168 18.7168 12.4302 18.484 12 18.484C11.5698 18.484 11.1832 18.7168 10.41 19.1824C9.0768 19.9852 6.26947 22.6514 4.77285 21.8523C4 21.4396 4 20.2867 4 17.9808Z\" />\n </motion.svg>\n </motion.div>\n );\n },\n);\n\nBookmarkIcon.displayName = \"BookmarkIcon\";\nexport { BookmarkIcon };\n","\"use client\";\n\nimport { cn } from \"@/lib/utils\";\nimport type { HTMLMotionProps, Variants } from \"motion/react\";\nimport { motion, useAnimation, useReducedMotion } from \"motion/react\";\nimport { forwardRef, useCallback, useImperativeHandle, useRef } from \"react\";\n\nexport interface BookmarkMinusIconHandle {\n startAnimation: () => void;\n stopAnimation: () => void;\n}\n\ninterface BookmarkMinusIconProps extends HTMLMotionProps<\"div\"> {\n size?: number;\n duration?: number;\n isAnimated?: boolean;\n color?: string;\n}\n\nconst BookmarkMinusIcon = forwardRef<\n BookmarkMinusIconHandle,\n BookmarkMinusIconProps\n>(\n (\n {\n onMouseEnter,\n onMouseLeave,\n className,\n size = 24,\n duration = 1,\n isAnimated = true,\n color,\n ...props\n },\n ref,\n ) => {\n const controls = useAnimation();\n const reduced = useReducedMotion();\n const isControlled = useRef(false);\n\n useImperativeHandle(ref, () => {\n isControlled.current = true;\n return {\n startAnimation: () =>\n reduced ? controls.start(\"normal\") : controls.start(\"animate\"),\n stopAnimation: () => controls.start(\"normal\"),\n };\n });\n\n const handleEnter = useCallback(\n (e?: React.MouseEvent<HTMLDivElement>) => {\n if (!isAnimated || reduced) return;\n if (!isControlled.current) controls.start(\"animate\");\n else onMouseEnter?.(e as any);\n },\n [controls, reduced, isAnimated, onMouseEnter],\n );\n\n const handleLeave = useCallback(\n (e?: React.MouseEvent<HTMLDivElement>) => {\n if (!isControlled.current) controls.start(\"normal\");\n else onMouseLeave?.(e as any);\n },\n [controls, onMouseLeave],\n );\n\n const bookmarkVariants: Variants = {\n normal: {\n y: 0,\n scaleX: 1,\n scaleY: 1,\n },\n animate: {\n y: [0, -4, 0],\n scaleY: [1, 1.1, 0.95, 1],\n scaleX: [1, 0.97, 1.02, 1],\n transition: {\n duration: 0.45 * duration,\n ease: \"easeOut\",\n },\n },\n };\n\n const minusVariants: Variants = {\n normal: {\n pathLength: 1,\n opacity: 1,\n },\n animate: {\n pathLength: [0, 1],\n opacity: 1,\n transition: {\n duration: 0.5 * duration,\n ease: \"easeInOut\",\n },\n },\n };\n\n return (\n <motion.div\n className={cn(\"inline-flex items-center justify-center\", className)}\n onMouseEnter={handleEnter}\n onMouseLeave={handleLeave}\n {...props}\n style={{ color, ...props.style }}\n >\n <motion.svg\n xmlns=\"http://www.w3.org/2000/svg\"\n width={size}\n height={size}\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke=\"currentColor\"\n strokeWidth=\"2\"\n strokeLinecap=\"round\"\n strokeLinejoin=\"round\"\n initial=\"normal\"\n animate={controls}\n variants={bookmarkVariants}\n >\n <path d=\"M11 2C7.22876 2 5.34315 2 4.17157 3.12874C3 4.25748 3 6.07416 3 9.70753V17.9808C3 20.2867 3 21.4396 3.77285 21.8523C5.26947 22.6514 8.0768 19.9852 9.41 19.1824C10.1832 18.7168 10.5698 18.484 11 18.484C11.4302 18.484 11.8168 18.7168 12.59 19.1824C13.9232 19.9852 16.7305 22.6514 18.2272 21.8523C19 21.4396 19 20.2867 19 17.9808V11\" />\n\n <motion.path d=\"M13 6L21 6\" variants={minusVariants} />\n </motion.svg>\n </motion.div>\n );\n },\n);\n\nBookmarkMinusIcon.displayName = \"BookmarkMinusIcon\";\nexport { BookmarkMinusIcon };\n","\"use client\";\n\nimport { cn } from \"@/lib/utils\";\nimport type { HTMLMotionProps, Variants } from \"motion/react\";\nimport { motion, useAnimation, useReducedMotion } from \"motion/react\";\nimport { forwardRef, useCallback, useImperativeHandle, useRef } from \"react\";\n\nexport interface BookmarkRemoveIconHandle {\n startAnimation: () => void;\n stopAnimation: () => void;\n}\n\ninterface BookmarkRemoveIconProps extends HTMLMotionProps<\"div\"> {\n size?: number;\n duration?: number;\n isAnimated?: boolean;\n color?: string;\n}\n\nconst BookmarkRemoveIcon = forwardRef<\n BookmarkRemoveIconHandle,\n BookmarkRemoveIconProps\n>(\n (\n {\n onMouseEnter,\n onMouseLeave,\n className,\n size = 24,\n duration = 1,\n isAnimated = true,\n color,\n ...props\n },\n ref,\n ) => {\n const controls = useAnimation();\n const reduced = useReducedMotion();\n const isControlled = useRef(false);\n\n useImperativeHandle(ref, () => {\n isControlled.current = true;\n return {\n startAnimation: () =>\n reduced ? controls.start(\"normal\") : controls.start(\"animate\"),\n stopAnimation: () => controls.start(\"normal\"),\n };\n });\n\n const handleEnter = useCallback(\n (e?: React.MouseEvent<HTMLDivElement>) => {\n if (!isAnimated || reduced) return;\n if (!isControlled.current) controls.start(\"animate\");\n else onMouseEnter?.(e as any);\n },\n [controls, reduced, isAnimated, onMouseEnter],\n );\n\n const handleLeave = useCallback(\n (e?: React.MouseEvent<HTMLDivElement>) => {\n if (!isControlled.current) controls.start(\"normal\");\n else onMouseLeave?.(e as any);\n },\n [controls, onMouseLeave],\n );\n\n const bookmarkVariants: Variants = {\n normal: {\n y: 0,\n scaleX: 1,\n scaleY: 1,\n },\n animate: {\n y: [0, -4, 0],\n scaleY: [1, 1.1, 0.95, 1],\n scaleX: [1, 0.97, 1.02, 1],\n transition: {\n duration: 0.45 * duration,\n ease: \"easeOut\",\n },\n },\n };\n\n const crossVariants: Variants = {\n normal: {\n pathLength: 1,\n opacity: 1,\n },\n animate: {\n pathLength: [0, 1],\n opacity: 1,\n transition: {\n duration: 0.6 * duration,\n ease: \"easeInOut\",\n },\n },\n };\n\n return (\n <motion.div\n className={cn(\"inline-flex items-center justify-center\", className)}\n onMouseEnter={handleEnter}\n onMouseLeave={handleLeave}\n {...props}\n style={{ color, ...props.style }}\n >\n <motion.svg\n xmlns=\"http://www.w3.org/2000/svg\"\n width={size}\n height={size}\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke=\"currentColor\"\n strokeWidth=\"2\"\n strokeLinecap=\"round\"\n strokeLinejoin=\"round\"\n initial=\"normal\"\n animate={controls}\n variants={bookmarkVariants}\n >\n <path d=\"M11 2C7.22876 2 5.34315 2 4.17157 3.12874C3 4.25748 3 6.07416 3 9.70753V17.9808C3 20.2867 3 21.4396 3.77285 21.8523C5.26947 22.6514 8.0768 19.9852 9.41 19.1824C10.1832 18.7168 10.5698 18.484 11 18.484C11.4302 18.484 11.8168 18.7168 12.59 19.1824C13.9232 19.9852 16.7305 22.6514 18.2272 21.8523C19 21.4396 19 20.2867 19 17.9808V12\" />\n\n <motion.path\n d=\"M21 2L14 8.99954M21 9L14 2.00046\"\n variants={crossVariants}\n />\n </motion.svg>\n </motion.div>\n );\n },\n);\n\nBookmarkRemoveIcon.displayName = \"BookmarkRemoveIcon\";\nexport { BookmarkRemoveIcon };\n","\"use client\";\n\nimport { cn } from \"@/lib/utils\";\nimport type { HTMLMotionProps, Variants } from \"motion/react\";\nimport { motion, useAnimation, useReducedMotion } from \"motion/react\";\nimport { forwardRef, useCallback, useImperativeHandle, useRef } from \"react\";\n\nexport interface CheckCheckIconHandle {\n startAnimation: () => void;\n stopAnimation: () => void;\n}\n\ninterface CheckCheckIconProps extends HTMLMotionProps<\"div\"> {\n size?: number;\n duration?: number;\n isAnimated?: boolean;\n color?: string;\n}\n\nconst CheckCheckIcon = forwardRef<CheckCheckIconHandle, CheckCheckIconProps>(\n (\n {\n onMouseEnter,\n onMouseLeave,\n className,\n size = 24,\n duration = 1,\n isAnimated = true,\n color,\n ...props\n },\n ref,\n ) => {\n const controls = useAnimation();\n const reduced = useReducedMotion();\n const isControlled = useRef(false);\n\n useImperativeHandle(ref, () => {\n isControlled.current = true;\n return {\n startAnimation: () =>\n reduced ? controls.start(\"normal\") : controls.start(\"animate\"),\n stopAnimation: () => controls.start(\"normal\"),\n };\n });\n\n const handleEnter = useCallback(\n (e?: React.MouseEvent<HTMLDivElement>) => {\n if (!isAnimated || reduced) return;\n if (!isControlled.current) controls.start(\"animate\");\n else onMouseEnter?.(e as any);\n },\n [controls, reduced, isAnimated, onMouseEnter],\n );\n\n const handleLeave = useCallback(\n (e?: React.MouseEvent<HTMLDivElement>) => {\n if (!isControlled.current) controls.start(\"normal\");\n else onMouseLeave?.(e as any);\n },\n [controls, onMouseLeave],\n );\n\n const firstTick: Variants = {\n normal: { strokeDashoffset: 0, scale: 1, opacity: 1 },\n animate: {\n strokeDashoffset: [26, 0],\n scale: [1, 1.15, 1],\n opacity: [0.5, 1],\n transition: {\n duration: 0.7 * duration,\n ease: \"easeInOut\",\n },\n },\n };\n\n const secondTick: Variants = {\n normal: { opacity: 1, x: 0 },\n animate: {\n opacity: [0, 1],\n x: [-6, 0],\n transition: {\n duration: 0.5 * duration,\n ease: \"easeOut\",\n delay: 0.35 * duration,\n },\n },\n };\n\n return (\n <motion.div\n className={cn(\"inline-flex items-center justify-center\", className)}\n onMouseEnter={handleEnter}\n onMouseLeave={handleLeave}\n {...props}\n style={{ color, ...props.style }}\n >\n <motion.svg\n xmlns=\"http://www.w3.org/2000/svg\"\n width={size}\n height={size}\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke=\"currentColor\"\n strokeWidth=\"2\"\n strokeLinecap=\"round\"\n strokeLinejoin=\"round\"\n >\n <motion.path\n d=\"M3 13.3333C3 13.3333 4.5 14 6.5 17C6.5 17 6.78485 16.5192 7.32133 15.7526M17 6C14.7085 7.14577 12.3119 9.55181 10.3879 11.8223\"\n strokeDasharray=\"26\"\n strokeDashoffset=\"0\"\n variants={firstTick}\n initial=\"normal\"\n animate={controls}\n />\n <motion.path\n d=\"M8 13.3333C8 13.3333 9.5 14 11.5 17C11.5 17 17 8.5 22 6\"\n variants={secondTick}\n initial=\"normal\"\n animate={controls}\n />\n </motion.svg>\n </motion.div>\n );\n },\n);\n\nCheckCheckIcon.displayName = \"CheckCheckIcon\";\nexport { CheckCheckIcon };\n","\"use client\";\n\nimport { cn } from \"@/lib/utils\";\nimport type { HTMLMotionProps, Variants } from \"motion/react\";\nimport { motion, useAnimation, useReducedMotion } from \"motion/react\";\nimport { forwardRef, useCallback, useImperativeHandle, useRef } from \"react\";\n\nexport interface CheckIconHandle {\n startAnimation: () => void;\n stopAnimation: () => void;\n}\n\ninterface CheckIconProps extends HTMLMotionProps<\"div\"> {\n size?: number;\n duration?: number;\n isAnimated?: boolean;\n color?: string;\n}\n\nconst CheckIcon = forwardRef<CheckIconHandle, CheckIconProps>(\n (\n {\n onMouseEnter,\n onMouseLeave,\n className,\n size = 24,\n duration = 1,\n isAnimated = true,\n color,\n ...props\n },\n ref,\n ) => {\n const controls = useAnimation();\n const reduced = useReducedMotion();\n const isControlled = useRef(false);\n\n useImperativeHandle(ref, () => {\n isControlled.current = true;\n return {\n startAnimation: () =>\n reduced ? controls.start(\"normal\") : controls.start(\"animate\"),\n stopAnimation: () => controls.start(\"normal\"),\n };\n });\n\n const handleEnter = useCallback(\n (e?: React.MouseEvent<HTMLDivElement>) => {\n if (!isAnimated || reduced) return;\n if (!isControlled.current) controls.start(\"animate\");\n else onMouseEnter?.(e as any);\n },\n [controls, reduced, isAnimated, onMouseEnter],\n );\n\n const handleLeave = useCallback(\n (e?: React.MouseEvent<HTMLDivElement>) => {\n if (!isControlled.current) controls.start(\"normal\");\n else onMouseLeave?.(e as any);\n },\n [controls, onMouseLeave],\n );\n\n const tickVariants: Variants = {\n normal: { strokeDashoffset: 0, scale: 1, opacity: 1 },\n animate: {\n strokeDashoffset: [24, 0],\n scale: [1, 1.15, 1],\n opacity: [0.5, 1],\n transition: {\n duration: 0.6 * duration,\n ease: \"easeInOut\",\n },\n },\n };\n\n return (\n <motion.div\n className={cn(\"inline-flex items-center justify-center\", className)}\n onMouseEnter={handleEnter}\n onMouseLeave={handleLeave}\n {...props}\n style={{ color, ...props.style }}\n >\n <motion.svg\n xmlns=\"http://www.w3.org/2000/svg\"\n width={size}\n height={size}\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke=\"currentColor\"\n strokeWidth=\"2\"\n strokeLinecap=\"round\"\n strokeLinejoin=\"round\"\n >\n <motion.path\n d=\"M5 14.5C5 14.5 6.5 14.5 8.5 18C8.5 18 14.0588 8.83333 19 7\"\n strokeDasharray=\"24\"\n strokeDashoffset=\"0\"\n variants={tickVariants}\n initial=\"normal\"\n animate={controls}\n />\n </motion.svg>\n </motion.div>\n );\n },\n);\n\nCheckIcon.displayName = \"CheckIcon\";\nexport { CheckIcon };\n","\"use client\";\n\nimport { cn } from \"@/lib/utils\";\nimport type { HTMLMotionProps, Variants } from \"motion/react\";\nimport { motion, useAnimation, useReducedMotion } from \"motion/react\";\nimport { forwardRef, useCallback, useImperativeHandle, useRef } from \"react\";\n\nexport interface ChevronRightIconHandle {\n startAnimation: () => void;\n stopAnimation: () => void;\n}\n\ninterface ChevronRightIconProps extends HTMLMotionProps<\"div\"> {\n size?: number;\n duration?: number;\n isAnimated?: boolean;\n color?: string;\n}\n\nconst ChevronRightIcon = forwardRef<\n ChevronRightIconHandle,\n ChevronRightIconProps\n>(\n (\n {\n onMouseEnter,\n onMouseLeave,\n className,\n size = 24,\n duration = 1,\n isAnimated = true,\n color,\n ...props\n },\n ref,\n ) => {\n const controls = useAnimation();\n const reduced = useReducedMotion();\n const isControlled = useRef(false);\n\n useImperativeHandle(ref, () => {\n isControlled.current = true;\n return {\n startAnimation: () =>\n reduced ? controls.start(\"normal\") : controls.start(\"animate\"),\n stopAnimation: () => controls.start(\"normal\"),\n };\n });\n\n const handleEnter = useCallback(\n (e?: React.MouseEvent<HTMLDivElement>) => {\n if (!isAnimated || reduced) return;\n if (!isControlled.current) controls.start(\"animate\");\n else onMouseEnter?.(e as any);\n },\n [controls, reduced, isAnimated, onMouseEnter],\n );\n\n const handleLeave = useCallback(\n (e?: React.MouseEvent<HTMLDivElement>) => {\n if (!isControlled.current) controls.start(\"normal\");\n else onMouseLeave?.(e as any);\n },\n [controls, onMouseLeave],\n );\n\n const arrowVariants: Variants = {\n normal: { x: 0, opacity: 1 },\n animate: {\n x: [0, 4, 0],\n opacity: [1, 0.6, 1],\n transition: {\n duration: 0.8 * duration,\n },\n },\n };\n\n const trailVariants: Variants = {\n normal: { x: 0, opacity: 0 },\n animate: {\n x: [6, 10],\n opacity: [0, 0.4, 0],\n transition: {\n duration: 0.8 * duration,\n },\n },\n };\n\n return (\n <motion.div\n className={cn(\"inline-flex items-center justify-center\", className)}\n onMouseEnter={handleEnter}\n onMouseLeave={handleLeave}\n {...props}\n style={{ color, ...props.style }}\n >\n <motion.svg\n xmlns=\"http://www.w3.org/2000/svg\"\n width={size}\n height={size}\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke=\"currentColor\"\n strokeWidth=\"2\"\n strokeLinecap=\"round\"\n strokeLinejoin=\"round\"\n animate={controls}\n initial=\"normal\"\n >\n <motion.path\n d=\"M9.00005 6C9.00005 6 15 10.4189 15 12C15 13.5812 9 18 9 18\"\n variants={trailVariants}\n />\n <motion.path\n d=\"M9.00005 6C9.00005 6 15 10.4189 15 12C15 13.5812 9 18 9 18\"\n variants={arrowVariants}\n />\n </motion.svg>\n </motion.div>\n );\n },\n);\n\nChevronRightIcon.displayName = \"ChevronRightIcon\";\nexport { ChevronRightIcon };\n","\"use client\";\n\nimport { cn } from \"@/lib/utils\";\nimport type { HTMLMotionProps, Variants } from \"motion/react\";\nimport { motion, useAnimation, useReducedMotion } from \"motion/react\";\nimport { forwardRef, useCallback, useImperativeHandle, useRef } from \"react\";\n\nexport interface Compass01IconHandle {\n startAnimation: () => void;\n stopAnimation: () => void;\n}\n\ninterface Compass01IconProps extends HTMLMotionProps<\"div\"> {\n size?: number;\n duration?: number;\n isAnimated?: boolean;\n color?: string;\n}\n\nconst Compass01Icon = forwardRef<Compass01IconHandle, Compass01IconProps>(\n (\n {\n onMouseEnter,\n onMouseLeave,\n className,\n size = 24,\n duration = 1,\n isAnimated = true,\n color,\n ...props\n },\n ref,\n ) => {\n const controls = useAnimation();\n const reduced = useReducedMotion();\n const isControlled = useRef(false);\n\n useImperativeHandle(ref, () => {\n isControlled.current = true;\n return {\n startAnimation: () =>\n reduced ? controls.start(\"normal\") : controls.start(\"animate\"),\n stopAnimation: () => controls.start(\"normal\"),\n };\n });\n\n const handleEnter = useCallback(\n (e?: React.MouseEvent<HTMLDivElement>) => {\n if (!isAnimated || reduced) return;\n if (!isControlled.current) controls.start(\"animate\");\n else onMouseEnter?.(e as any);\n },\n [controls, reduced, isAnimated, onMouseEnter],\n );\n\n const handleLeave = useCallback(\n (e?: React.MouseEvent<HTMLDivElement>) => {\n if (!isControlled.current) controls.start(\"normal\");\n else onMouseLeave?.(e as any);\n },\n [controls, onMouseLeave],\n );\n\n const circleVariants: Variants = {\n normal: { scale: 1 },\n animate: {\n scale: [1, 1.05, 0.98, 1],\n transition: {\n duration: 0.9 * duration,\n ease: \"easeInOut\",\n },\n },\n };\n\n const needleVariants: Variants = {\n normal: { rotate: 0 },\n animate: {\n rotate: [0, 190, 175, 180],\n transition: {\n duration: 1 * duration,\n ease: \"easeInOut\",\n },\n },\n };\n\n return (\n <motion.div\n className={cn(\"inline-flex items-center justify-center\", className)}\n onMouseEnter={handleEnter}\n onMouseLeave={handleLeave}\n {...props}\n style={{ color, ...props.style }}\n >\n <motion.svg\n xmlns=\"http://www.w3.org/2000/svg\"\n width={size}\n height={size}\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke=\"currentColor\"\n strokeWidth=\"2\"\n animate={controls}\n initial=\"normal\"\n >\n <motion.path\n d=\"M22 12C22 6.47715 17.5228 2 12 2C6.47715 2 2 6.47715 2 12C2 17.5228 6.47715 22 12 22C17.5228 22 22 17.5228 22 12Z\"\n variants={circleVariants}\n />\n\n <motion.g\n variants={needleVariants}\n style={{\n transformBox: \"fill-box\",\n transformOrigin: \"center\",\n }}\n >\n <path d=\"M12.4014 8.29796L15.3213 7.32465C16.2075 7.02924 16.6507 6.88153 16.8846 7.11544C17.1185 7.34935 16.9708 7.79247 16.6753 8.67871L15.702 11.5986C15.1986 13.1088 14.9469 13.8639 14.4054 14.4054C13.8639 14.9469 13.1088 15.1986 11.5986 15.702L8.67871 16.6753C7.79247 16.9708 7.34935 17.1185 7.11544 16.8846C6.88153 16.6507 7.02924 16.2075 7.32465 15.3213L8.29796 12.4014C8.80136 10.8912 9.05306 10.1361 9.59457 9.59457C10.1361 9.05306 10.8912 8.80136 12.4014 8.29796Z\" />\n <path d=\"M12 12L11.9936 12.0064\" strokeWidth=\"2\" strokeLinecap=\"round\" />\n </motion.g>\n </motion.svg>\n </motion.div>\n );\n },\n);\n\nCompass01Icon.displayName = \"Compass01Icon\";\nexport { Compass01Icon };\n","\"use client\";\n\nimport { cn } from \"@/lib/utils\";\nimport type { HTMLMotionProps, Variants } from \"motion/react\";\nimport { motion, useAnimation, useReducedMotion } from \"motion/react\";\nimport { forwardRef, useCallback, useImperativeHandle, useRef } from \"react\";\n\nexport interface Compass02IconHandle {\n startAnimation: () => void;\n stopAnimation: () => void;\n}\n\ninterface Compass02IconProps extends HTMLMotionProps<\"div\"> {\n size?: number;\n duration?: number;\n isAnimated?: boolean;\n color?: string;\n}\n\nconst Compass02Icon = forwardRef<Compass02IconHandle, Compass02IconProps>(\n (\n {\n onMouseEnter,\n onMouseLeave,\n className,\n size = 24,\n duration = 1,\n isAnimated = true,\n color,\n ...props\n },\n ref,\n ) => {\n const controls = useAnimation();\n const reduced = useReducedMotion();\n const isControlled = useRef(false);\n\n useImperativeHandle(ref, () => {\n isControlled.current = true;\n return {\n startAnimation: () =>\n reduced ? controls.start(\"normal\") : controls.start(\"animate\"),\n stopAnimation: () => controls.start(\"normal\"),\n };\n });\n\n const handleEnter = useCallback(\n (e?: React.MouseEvent<HTMLDivElement>) => {\n if (!isAnimated || reduced) return;\n if (!isControlled.current) controls.start(\"animate\");\n else onMouseEnter?.(e as any);\n },\n [controls, reduced, isAnimated, onMouseEnter],\n );\n\n const handleLeave = useCallback(\n (e?: React.MouseEvent<HTMLDivElement>) => {\n if (!isControlled.current) controls.start(\"normal\");\n else onMouseLeave?.(e as any);\n },\n [controls, onMouseLeave],\n );\n\n const containerVariants: Variants = {\n normal: { scale: 1 },\n animate: {\n scale: 1.02,\n transition: {\n duration: 0.25 * duration,\n ease: \"easeOut\",\n },\n },\n };\n const needleVariants: Variants = {\n normal: { rotate: 0 },\n animate: {\n rotate: [0, 190, 175, 180],\n transition: {\n duration: 1 * duration,\n ease: \"easeInOut\",\n },\n },\n };\n\n return (\n <motion.div\n className={cn(\"inline-flex items-center justify-center\", className)}\n onMouseEnter={handleEnter}\n onMouseLeave={handleLeave}\n {...props}\n style={{ color, ...props.style }}\n >\n <motion.svg\n xmlns=\"http://www.w3.org/2000/svg\"\n width={size}\n height={size}\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke=\"currentColor\"\n strokeWidth=\"2\"\n strokeLinecap=\"round\"\n strokeLinejoin=\"round\"\n animate={controls}\n initial=\"normal\"\n >\n {/* Outer container */}\n <motion.path\n d=\"M2.5 12C2.5 7.52166 2.5 5.28249 3.89124 3.89124C5.28249 2.5 7.52166 2.5 12 2.5C16.4783 2.5 18.7175 2.5 20.1088 3.89124C21.5 5.28249 21.5 7.52166 21.5 12C21.5 16.4783 21.5 18.7175 20.1088 20.1088C18.7175 21.5 16.4783 21.5 12 21.5C7.52166 21.5 5.28249 21.5 3.89124 20.1088C2.5 18.7175 2.5 16.4783 2.5 12Z\"\n variants={containerVariants}\n />\n\n {/* Needle group */}\n <motion.g\n variants={needleVariants}\n style={{\n transformBox: \"fill-box\",\n transformOrigin: \"center\",\n }}\n >\n <path d=\"M12.4014 8.29796L15.3213 7.32465C16.2075 7.02924 16.6507 6.88153 16.8846 7.11544C17.1185 7.34935 16.9708 7.79247 16.6753 8.67871L15.702 11.5986C15.1986 13.1088 14.9469 13.8639 14.4054 14.4054C13.8639 14.9469 13.1088 15.1986 11.5986 15.702L8.67871 16.6753C7.79247 16.9708 7.34935 17.1185 7.11544 16.8846C6.88153 16.6507 7.02924 16.2075 7.32465 15.3213L8.29796 12.4014C8.80136 10.8912 9.05306 10.1361 9.59457 9.59457C10.1361 9.05306 10.8912 8.80136 12.4014 8.29796Z\" />\n <path d=\"M12 12L11.9936 12.0064\" strokeWidth=\"2\" />\n </motion.g>\n </motion.svg>\n </motion.div>\n );\n },\n);\n\nCompass02Icon.displayName = \"Compass02Icon\";\nexport { Compass02Icon };\n","\"use client\";\n\nimport { cn } from \"@/lib/utils\";\nimport type { HTMLMotionProps, Transition, Variants } from \"motion/react\";\nimport { motion, useAnimation, useReducedMotion } from \"motion/react\";\nimport { forwardRef, useCallback, useImperativeHandle, useRef } from \"react\";\n\nexport interface CopyIconHandle {\n startAnimation: () => void;\n stopAnimation: () => void;\n}\n\nexport interface CopyIconProps extends HTMLMotionProps<\"div\"> {\n size?: number;\n duration?: number;\n isAnimated?: boolean;\n color?: string;\n}\n\nconst CopyIcon = forwardRef<CopyIconHandle, CopyIconProps>(\n (\n {\n onMouseEnter,\n onMouseLeave,\n className,\n size = 24,\n duration = 1,\n isAnimated = true,\n color,\n ...props\n },\n ref,\n ) => {\n const controls = useAnimation();\n const reduced = useReducedMotion();\n const isControlled = useRef(false);\n\n useImperativeHandle(ref, () => {\n isControlled.current = true;\n return {\n startAnimation: () =>\n reduced ? controls.start(\"normal\") : controls.start(\"animate\"),\n stopAnimation: () => controls.start(\"normal\"),\n };\n });\n\n const handleEnter = useCallback(\n (e?: React.MouseEvent<HTMLDivElement>) => {\n if (!isAnimated || reduced) return;\n if (!isControlled.current) controls.start(\"animate\");\n else onMouseEnter?.(e as any);\n },\n [controls, reduced, isAnimated, onMouseEnter],\n );\n\n const handleLeave = useCallback(\n (e?: React.MouseEvent<HTMLDivElement>) => {\n if (!isControlled.current) controls.start(\"normal\");\n else onMouseLeave?.(e as any);\n },\n [controls, onMouseLeave],\n );\n\n const defaultTransition: Transition = {\n type: \"spring\",\n stiffness: 160,\n damping: 17,\n mass: 1,\n };\n\n const boxVariants: Variants = {\n normal: {\n translateX: 0,\n translateY: 0,\n rotate: 0,\n },\n animate: {\n translateX: -3,\n translateY: -3,\n rotate: 360,\n transition: {\n ...defaultTransition,\n duration: 0.7 * duration,\n },\n },\n };\n\n const pathVariants: Variants = {\n normal: { x: 0, y: 0, opacity: 1 },\n animate: {\n x: 3,\n y: 3,\n opacity: 0,\n transition: defaultTransition,\n },\n };\n\n return (\n <motion.div\n className={cn(\"relative inline-flex\", className)}\n onMouseEnter={handleEnter}\n onMouseLeave={handleLeave}\n {...props}\n style={{ color, ...props.style }}\n >\n <motion.svg\n xmlns=\"http://www.w3.org/2000/svg\"\n width={size}\n height={size}\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke=\"currentColor\"\n strokeWidth=\"2\"\n strokeLinecap=\"round\"\n strokeLinejoin=\"round\"\n animate={controls}\n initial=\"normal\"\n >\n <motion.path\n d=\"M9 15C9 12.1716 9 10.7574 9.87868 9.87868C10.7574 9 12.1716 9 15 9H16C18.8284 9 20.2426 9 21.1213 9.87868C22 10.7574 22 12.1716 22 15V16C22 18.8284 22 20.2426 21.1213 21.1213C20.2426 22 18.8284 22 16 22H15C12.1716 22 10.7574 22 9.87868 21.1213C9 20.2426 9 18.8284 9 16V15Z\"\n variants={boxVariants}\n />\n <motion.path\n d=\"M17 9C17 6.04291 16.9528 4.51121 16.092 3.46243C15.9258 3.25989 15.7401 3.07418 15.5376 2.90796C14.4312 2 12.7875 2 9.5 2C6.21252 2 4.56878 2 3.46243 2.90796C3.25989 3.07417 3.07418 3.25989 2.90796 3.46243C2 4.56878 2 6.21252 2 9.5C2 12.7875 2 14.4312 2.90796 15.5376C3.07417 15.7401 3.25989 15.9258 3.46243 16.092C4.51121 16.9528 6.04291 16.9975 9 17\"\n variants={pathVariants}\n />\n </motion.svg>\n </motion.div>\n );\n },\n);\n\nCopyIcon.displayName = \"CopyIcon\";\n\nexport { CopyIcon };\n","\"use client\";\n\nimport { cn } from \"@/lib/utils\";\nimport type { HTMLMotionProps, Variants } from \"motion/react\";\nimport { motion, useAnimation, useReducedMotion } from \"motion/react\";\nimport { forwardRef, useCallback, useImperativeHandle, useRef } from \"react\";\n\nexport interface Dashboard01IconHandle {\n startAnimation: () => void;\n stopAnimation: () => void;\n}\n\ninterface Dashboard01IconProps extends HTMLMotionProps<\"div\"> {\n size?: number;\n duration?: number;\n isAnimated?: boolean;\n color?: string;\n}\n\nconst Dashboard01Icon = forwardRef<Dashboard01IconHandle, Dashboard01IconProps>(\n (\n {\n onMouseEnter,\n onMouseLeave,\n className,\n size = 24,\n duration = 0.6,\n isAnimated = true,\n color,\n ...props\n },\n ref,\n ) => {\n const controls = useAnimation();\n const reduced = useReducedMotion();\n const isControlled = useRef(false);\n\n useImperativeHandle(ref, () => {\n isControlled.current = true;\n return {\n startAnimation: () =>\n reduced ? controls.start(\"normal\") : controls.start(\"animate\"),\n stopAnimation: () => controls.start(\"normal\"),\n };\n });\n\n const handleEnter = useCallback(\n (e?: React.MouseEvent<HTMLDivElement>) => {\n if (!isAnimated || reduced) return;\n if (!isControlled.current) controls.start(\"animate\");\n else onMouseEnter?.(e as any);\n },\n [controls, reduced, isAnimated, onMouseEnter],\n );\n\n const handleLeave = useCallback(\n (e?: React.MouseEvent<HTMLDivElement>) => {\n if (!isControlled.current) controls.start(\"normal\");\n else onMouseLeave?.(e as any);\n },\n [controls, onMouseLeave],\n );\n\n const iconVariants: Variants = {\n normal: { scale: 1, rotate: 0 },\n animate: {\n scale: [1, 1.06, 0.98, 1],\n rotate: [0, -1.5, 1.5, 0],\n transition: { duration: 1.1 * duration, ease: \"easeInOut\" },\n },\n };\n\n const tileVariants: Variants = {\n normal: { opacity: 1, scale: 1, y: 0 },\n animate: (i: number) => ({\n opacity: [0.6, 1],\n scale: [0.94, 1.05, 1],\n y: [4, -2, 0],\n transition: {\n duration: duration,\n ease: \"easeInOut\",\n delay: i * 0.08,\n },\n }),\n };\n\n return (\n <motion.div\n className={cn(\"inline-flex items-center justify-center\", className)}\n onMouseEnter={handleEnter}\n onMouseLeave={handleLeave}\n {...props}\n style={{ color, ...props.style }}\n >\n <motion.svg\n xmlns=\"http://www.w3.org/2000/svg\"\n width={size}\n height={size}\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke=\"currentColor\"\n strokeWidth=\"2\"\n strokeLinejoin=\"round\"\n animate={controls}\n initial=\"normal\"\n variants={iconVariants}\n >\n <motion.path\n d=\"M10.5 8.75V6.75C10.5 5.10626 10.5 4.28439 10.046 3.73121C9.96291 3.62995 9.87005 3.53709 9.76879 3.45398C9.21561 3 8.39374 3 6.75 3C5.10626 3 4.28439 3 3.73121 3.45398C3.62995 3.53709 3.53709 3.62995 3.45398 3.73121C3 4.28439 3 5.10626 3 6.75V8.75C3 10.3937 3 11.2156 3.45398 11.7688C3.53709 11.8701 3.62995 11.9629 3.73121 12.046C4.28439 12.5 5.10626 12.5 6.75 12.5C8.39374 12.5 9.21561 12.5 9.76879 12.046C9.87005 11.9629 9.96291 11.8701 10.046 11.7688C10.5 11.2156 10.5 10.3937 10.5 8.75Z\"\n variants={tileVariants}\n custom={0}\n initial=\"normal\"\n animate={controls}\n />\n <motion.path\n d=\"M7.75 15.5H5.75C5.05222 15.5 4.70333 15.5 4.41943 15.5861C3.78023 15.78 3.28002 16.2802 3.08612 16.9194C3 17.2033 3 17.5522 3 18.25C3 18.9478 3 19.2967 3.08612 19.5806C3.28002 20.2198 3.78023 20.72 4.41943 20.9139C4.70333 21 5.05222 21 5.75 21H7.75C8.44778 21 8.79667 21 9.08057 20.9139C9.71977 20.72 10.22 20.2198 10.4139 19.5806C10.5 19.2967 10.5 18.9478 10.5 18.25C10.5 17.5522 10.5 17.2033 10.4139 16.9194C10.22 16.2802 9.71977 15.78 9.08057 15.5861C8.79667 15.5 8.44778 15.5 7.75 15.5Z\"\n variants={tileVariants}\n custom={1}\n initial=\"normal\"\n animate={controls}\n />\n <motion.path\n d=\"M21 17.25V15.25C21 13.6063 21 12.7844 20.546 12.2312C20.4629 12.1299 20.3701 12.0371 20.2688 11.954C19.7156 11.5 18.8937 11.5 17.25 11.5C15.6063 11.5 14.7844 11.5 14.2312 11.954C14.1299 12.0371 14.0371 12.1299 13.954 12.2312C13.5 12.7844 13.5 13.6063 13.5 15.25V17.25C13.5 18.8937 13.5 19.7156 13.954 20.2688C14.0371 20.3701 14.1299 20.4629 14.2312 20.546C14.7844 21 15.6063 21 17.25 21C18.8937 21 19.7156 21 20.2688 20.546C20.3701 20.4629 20.4629 20.3701 20.546 20.2688C21 19.7156 21 18.8937 21 17.25Z\"\n variants={tileVariants}\n custom={2}\n initial=\"normal\"\n animate={controls}\n />\n <motion.path\n d=\"M18.25 3H16.25C15.5522 3 15.2033 3 14.9194 3.08612C14.2802 3.28002 13.78 3.78023 13.5861 4.41943C13.5 4.70333 13.5 5.05222 13.5 5.75C13.5 6.44778 13.5 6.79667 13.5861 7.08057C13.78 7.71977 14.2802 8.21998 14.9194 8.41388C15.2033 8.5 15.5522 8.5 16.25 8.5H18.25C18.9478 8.5 19.2967 8.5 19.5806 8.41388C20.2198 8.21998 20.72 7.71977 20.9139 7.08057C21 6.79667 21 6.44778 21 5.75C21 5.05222 21 4.70333 20.9139 4.41943C20.72 3.78023 20.2198 3.28002 19.5806 3.08612C19.2967 3 18.9478 3 18.25 3Z\"\n variants={tileVariants}\n custom={3}\n initial=\"normal\"\n animate={controls}\n />\n </motion.svg>\n </motion.div>\n );\n },\n);\n\nDashboard01Icon.displayName = \"Dashboard01Icon\";\nexport { Dashboard01Icon };\n","\"use client\";\n\nimport { cn } from \"@/lib/utils\";\nimport type { HTMLMotionProps, Variants } from \"motion/react\";\nimport { motion, useAnimation, useReducedMotion } from \"motion/react\";\nimport { forwardRef, useCallback, useImperativeHandle, useRef } from \"react\";\n\nexport interface Dashboard02IconHandle {\n startAnimation: () => void;\n stopAnimation: () => void;\n}\n\ninterface Dashboard02IconProps extends HTMLMotionProps<\"div\"> {\n size?: number;\n duration?: number;\n isAnimated?: boolean;\n color?: string;\n}\n\nconst Dashboard02Icon = forwardRef<Dashboard02IconHandle, Dashboard02IconProps>(\n (\n {\n onMouseEnter,\n onMouseLeave,\n className,\n size = 24,\n duration = 1,\n isAnimated = true,\n color,\n ...props\n },\n ref,\n ) => {\n const controls = useAnimation();\n const reduced = useReducedMotion();\n const isControlled = useRef(false);\n\n useImperativeHandle(ref, () => {\n isControlled.current = true;\n return {\n startAnimation: () =>\n reduced ? controls.start(\"normal\") : controls.start(\"animate\"),\n stopAnimation: () => controls.start(\"normal\"),\n };\n });\n\n const handleEnter = useCallback(\n (e?: React.MouseEvent<HTMLDivElement>) => {\n if (!isAnimated || reduced) return;\n if (!isControlled.current) controls.start(\"animate\");\n else onMouseEnter?.(e as any);\n },\n [controls, reduced, isAnimated, onMouseEnter],\n );\n\n const handleLeave = useCallback(\n (e?: React.MouseEvent<HTMLDivElement>) => {\n if (!isControlled.current) controls.start(\"normal\");\n else onMouseLeave?.(e as any);\n },\n [controls, onMouseLeave],\n );\n\n const gridVariants: Variants = {\n normal: { scale: 1, rotate: 0 },\n animate: {\n scale: [1, 1.04, 1],\n rotate: [0, 1, 0],\n transition: {\n duration: 0.6 * duration,\n ease: \"easeInOut\",\n },\n },\n };\n\n const tileVariants: Variants = {\n normal: { opacity: 1, scale: 1 },\n animate: (i: number) => ({\n opacity: [0.5, 1],\n scale: [0.9, 1.08, 1],\n transition: {\n duration: 0.55 * duration,\n delay: 0.08 * i,\n ease: \"easeOut\",\n },\n }),\n };\n\n const sweepVariants: Variants = {\n normal: { x: -26, y: -26, opacity: 0 },\n animate: {\n x: [-26, 26],\n y: [-26, 26],\n opacity: [0, 0.25, 0],\n transition: {\n duration: 0.8 * duration,\n ease: \"easeInOut\",\n delay: 0.1,\n },\n },\n };\n\n return (\n <motion.div\n className={cn(\"inline-flex items-center justify-center\", className)}\n onMouseEnter={handleEnter}\n onMouseLeave={handleLeave}\n {...props}\n style={{ color, ...props.style }}\n >\n <motion.svg\n xmlns=\"http://www.w3.org/2000/svg\"\n width={size}\n height={size}\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke=\"currentColor\"\n strokeWidth=\"2\"\n strokeLinecap=\"square\"\n strokeLinejoin=\"round\"\n >\n <defs>\n <linearGradient id=\"grid-sweep\" x1=\"0\" y1=\"0\" x2=\"1\" y2=\"1\">\n <stop offset=\"0%\" stopColor=\"currentColor\" stopOpacity=\"0\" />\n <stop offset=\"50%\" stopColor=\"currentColor\" stopOpacity=\"0.25\" />\n <stop offset=\"100%\" stopColor=\"currentColor\" stopOpacity=\"0\" />\n </linearGradient>\n </defs>\n\n <motion.g variants={gridVariants} initial=\"normal\" animate={controls}>\n <motion.g\n variants={tileVariants}\n custom={0}\n initial=\"normal\"\n animate={controls}\n >\n <path d=\"M3.1903 8.95671C3 8.49728 3 7.91485 3 6.75C3 5.58515 3 5.00272 3.1903 4.54329C3.44404 3.93072 3.93072 3.44404 4.54329 3.1903C5.00272 3 5.58515 3 6.75 3C7.91485 3 8.49728 3 8.95671 3.1903C9.56928 3.44404 10.056 3.93072 10.3097 4.54329C10.5 5.00272 10.5 5.58515 10.5 6.75C10.5 7.91485 10.5 8.49728 10.3097 8.95671C10.056 9.56928 9.56928 10.056 8.95671 10.3097C8.49728 10.5 7.91485 10.5 6.75 10.5C5.58515 10.5 5.00272 10.5 4.54329 10.3097C3.93072 10.056 3.44404 9.56928 3.1903 8.95671Z\" />\n </motion.g>\n\n <motion.g\n variants={tileVariants}\n custom={1}\n initial=\"normal\"\n animate={controls}\n >\n <path d=\"M13.6903 8.95671C13.5 8.49728 13.5 7.91485 13.5 6.75C13.5 5.58515 13.5 5.00272 13.6903 4.54329C13.944 3.93072 14.4307 3.44404 15.0433 3.1903C15.5027 3 16.0851 3 17.25 3C18.4149 3 18.9973 3 19.4567 3.1903C20.0693 3.44404 20.556 3.93072 20.8097 4.54329C21 5.00272 21 5.58515 21 6.75C21 7.91485 21 8.49728 20.8097 8.95671C20.556 9.56928 20.0693 10.056 19.4567 10.3097C18.9973 10.5 18.4149 10.5 17.25 10.5C16.0851 10.5 15.5027 10.5 15.0433 10.3097C14.4307 10.056 13.944 9.56928 13.6903 8.95671Z\" />\n </motion.g>\n\n <motion.g\n variants={tileVariants}\n custom={2}\n initial=\"normal\"\n animate={controls}\n >\n <path d=\"M13.6903 19.4567C13.5 18.9973 13.5 18.4149 13.5 17.25C13.5 16.0851 13.5 15.5027 13.6903 15.0433C13.944 14.4307 14.4307 13.944 15.0433 13.6903C15.5027 13.5 16.0851 13.5 17.25 13.5C18.4149 13.5 18.9973 13.5 19.4567 13.6903C20.0693 13.944 20.556 14.4307 20.8097 15.0433C21 15.5027 21 16.0851 21 17.25C21 18.4149 21 18.9973 20.8097 19.4567C20.556 20.0693 20.0693 20.556 19.4567 20.8097C18.9973 21 18.4149 21 17.25 21C16.0851 21 15.5027 21 15.0433 20.8097C14.4307 20.556 13.944 20.0693 13.6903 19.4567Z\" />\n </motion.g>\n\n <motion.g\n variants={tileVariants}\n custom={3}\n initial=\"normal\"\n animate={controls}\n >\n <path d=\"M3.1903 19.4567C3 18.9973 3 18.4149 3 17.25C3 16.0851 3 15.5027 3.1903 15.0433C3.44404 14.4307 3.93072 13.944 4.54329 13.6903C5.00272 13.5 5.58515 13.5 6.75 13.5C7.91485 13.5 8.49728 13.5 8.95671 13.6903C9.56928 13.944 10.056 14.4307 10.3097 15.0433C10.5 15.5027 10.5 16.0851 10.5 17.25C10.5 18.4149 10.5 18.9973 10.3097 19.4567C10.056 20.0693 9.56928 20.556 8.95671 20.8097C8.49728 21 7.91485 21 6.75 21C5.58515 21 5.00272 21 4.54329 20.8097C3.93072 20.556 3.44404 20.0693 3.1903 19.4567Z\" />\n </motion.g>\n\n <motion.rect\n x=\"2\"\n y=\"2\"\n width=\"20\"\n height=\"20\"\n rx=\"3\"\n fill=\"url(#grid-sweep)\"\n variants={sweepVariants}\n initial=\"normal\"\n animate={controls}\n style={{ pointerEvents: \"none\" }}\n />\n </motion.g>\n </motion.svg>\n </motion.div>\n );\n },\n);\n\nDashboard02Icon.displayName = \"Dashboard02Icon\";\nexport { Dashboard02Icon };\n","\"use client\";\n\nimport { cn } from \"@/lib/utils\";\nimport type { HTMLMotionProps, Variants } from \"motion/react\";\nimport { motion, useAnimation, useReducedMotion } from \"motion/react\";\nimport { forwardRef, useCallback, useImperativeHandle, useRef } from \"react\";\n\nexport interface Dashboard03IconHandle {\n startAnimation: () => void;\n stopAnimation: () => void;\n}\n\ninterface Dashboard03IconProps extends HTMLMotionProps<\"div\"> {\n size?: number;\n duration?: number;\n isAnimated?: boolean;\n color?: string;\n}\n\nconst Dashboard03Icon = forwardRef<Dashboard03IconHandle, Dashboard03IconProps>(\n (\n {\n onMouseEnter,\n onMouseLeave,\n className,\n size = 24,\n duration = 1,\n isAnimated = true,\n color,\n ...props\n },\n ref,\n ) => {\n const controls = useAnimation();\n const reduced = useReducedMotion();\n const isControlled = useRef(false);\n\n useImperativeHandle(ref, () => {\n isControlled.current = true;\n return {\n startAnimation: () =>\n reduced ? controls.start(\"normal\") : controls.start(\"animate\"),\n stopAnimation: () => controls.start(\"normal\"),\n };\n });\n\n const handleEnter = useCallback(\n (e?: React.MouseEvent<HTMLDivElement>) => {\n if (!isAnimated || reduced) return;\n if (!isControlled.current) controls.start(\"animate\");\n else onMouseEnter?.(e as any);\n },\n [controls, reduced, isAnimated, onMouseEnter],\n );\n\n const handleLeave = useCallback(\n (e?: React.MouseEvent<HTMLDivElement>) => {\n if (!isControlled.current) controls.start(\"normal\");\n else onMouseLeave?.(e as any);\n },\n [controls, onMouseLeave],\n );\n\n const gridVariants: Variants = {\n normal: { scale: 1, rotate: 0 },\n animate: {\n scale: [1, 1.04, 1],\n rotate: [0, 1, 0],\n transition: {\n duration: 0.6 * duration,\n ease: \"easeInOut\",\n },\n },\n };\n\n const tileVariants: Variants = {\n normal: { opacity: 1, scale: 1 },\n animate: (i: number) => ({\n opacity: [0.5, 1],\n scale: [0.9, 1.08, 1],\n transition: {\n duration: 0.55 * duration,\n delay: 0.08 * i,\n ease: \"easeOut\",\n },\n }),\n };\n\n const sweepVariants: Variants = {\n normal: { x: -26, y: -26, opacity: 0 },\n animate: {\n x: [-26, 26],\n y: [-26, 26],\n opacity: [0, 0.25, 0],\n transition: {\n duration: 0.8 * duration,\n ease: \"easeInOut\",\n delay: 0.1,\n },\n },\n };\n\n return (\n <motion.div\n className={cn(\"inline-flex items-center justify-center\", className)}\n onMouseEnter={handleEnter}\n onMouseLeave={handleLeave}\n {...props}\n style={{ color, ...props.style }}\n >\n <motion.svg\n xmlns=\"http://www.w3.org/2000/svg\"\n width={size}\n height={size}\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke=\"currentColor\"\n strokeWidth=\"2\"\n strokeLinejoin=\"round\"\n >\n <defs>\n <linearGradient id=\"dashboard03-sweep\" x1=\"0\" y1=\"0\" x2=\"1\" y2=\"1\">\n <stop offset=\"0%\" stopColor=\"currentColor\" stopOpacity=\"0\" />\n <stop offset=\"50%\" stopColor=\"currentColor\" stopOpacity=\"0.25\" />\n <stop offset=\"100%\" stopColor=\"currentColor\" stopOpacity=\"0\" />\n </linearGradient>\n </defs>\n\n <motion.g variants={gridVariants} initial=\"normal\" animate={controls}>\n <motion.g\n variants={tileVariants}\n custom={0}\n initial=\"normal\"\n animate={controls}\n >\n <path d=\"M10.5 6.75C10.5 4.67893 8.82107 3 6.75 3C4.67893 3 3 4.67893 3 6.75C3 8.82107 4.67893 10.5 6.75 10.5C8.82107 10.5 10.5 8.82107 10.5 6.75Z\" />\n </motion.g>\n\n <motion.g\n variants={tileVariants}\n custom={1}\n initial=\"normal\"\n animate={controls}\n >\n <path d=\"M21 6.75C21 4.67893 19.3211 3 17.25 3C15.1789 3 13.5 4.67893 13.5 6.75C13.5 8.82107 15.1789 10.5 17.25 10.5C19.3211 10.5 21 8.82107 21 6.75Z\" />\n </motion.g>\n\n <motion.g\n variants={tileVariants}\n custom={2}\n initial=\"normal\"\n animate={controls}\n >\n <path d=\"M21 17.25C21 15.1789 19.3211 13.5 17.25 13.5C15.1789 13.5 13.5 15.1789 13.5 17.25C13.5 19.3211 15.1789 21 17.25 21C19.3211 21 21 19.3211 21 17.25Z\" />\n </motion.g>\n\n <motion.g\n variants={tileVariants}\n custom={3}\n initial=\"normal\"\n animate={controls}\n >\n <path d=\"M10.5 17.25C10.5 15.1789 8.82107 13.5 6.75 13.5C4.67893 13.5 3 15.1789 3 17.25C3 19.3211 4.67893 21 6.75 21C8.82107 21 10.5 19.3211 10.5 17.25Z\" />\n </motion.g>\n\n <motion.rect\n x=\"2\"\n y=\"2\"\n width=\"20\"\n height=\"20\"\n rx=\"6\"\n fill=\"url(#dashboard03-sweep)\"\n variants={sweepVariants}\n initial=\"normal\"\n animate={controls}\n style={{ pointerEvents: \"none\" }}\n />\n </motion.g>\n </motion.svg>\n </motion.div>\n );\n },\n);\n\nDashboard03Icon.displayName = \"Dashboard03Icon\";\nexport { Dashboard03Icon };\n","\"use client\";\n\nimport { cn } from \"@/lib/utils\";\nimport type { HTMLMotionProps, Variants } from \"motion/react\";\nimport { motion, useAnimation, useReducedMotion } from \"motion/react\";\nimport { forwardRef, useCallback, useImperativeHandle, useRef } from \"react\";\n\nexport interface DiscordIconHandle {\n startAnimation: () => void;\n stopAnimation: () => void;\n}\n\ninterface DiscordIconProps extends HTMLMotionProps<\"div\"> {\n size?: number;\n duration?: number;\n isAnimated?: boolean;\n color?: string;\n}\n\nconst DiscordIcon = forwardRef<DiscordIconHandle, DiscordIconProps>(\n (\n {\n onMouseEnter,\n onMouseLeave,\n className,\n size = 24,\n duration = 1,\n isAnimated = true,\n color,\n ...props\n },\n ref,\n ) => {\n const controls = useAnimation();\n const reduced = useReducedMotion();\n const isControlled = useRef(false);\n\n useImperativeHandle(ref, () => {\n isControlled.current = true;\n return {\n startAnimation: () =>\n reduced ? controls.start(\"normal\") : controls.start(\"animate\"),\n stopAnimation: () => controls.start(\"normal\"),\n };\n });\n\n const handleEnter = useCallback(\n (e?: React.MouseEvent<HTMLDivElement>) => {\n if (!isAnimated || reduced) return;\n if (!isControlled.current) controls.start(\"animate\");\n else onMouseEnter?.(e as any);\n },\n [controls, reduced, isAnimated, onMouseEnter],\n );\n\n const handleLeave = useCallback(\n (e?: React.MouseEvent<HTMLDivElement>) => {\n if (!isControlled.current) controls.start(\"normal\");\n else onMouseLeave?.(e as any);\n },\n [controls, onMouseLeave],\n );\n\n const containerVariants: Variants = {\n normal: {\n scale: 1,\n y: 0,\n },\n animate: {\n scale: [1, 1.04, 1],\n y: [0, 1.2, 0],\n transition: {\n duration: 0.6 * duration,\n ease: \"easeInOut\",\n },\n },\n };\n\n const eyeVariants: Variants = {\n normal: {\n scaleY: 1,\n },\n animate: {\n scaleY: [1, 0.1, 1],\n transition: {\n duration: 0.4 * duration,\n ease: \"easeInOut\",\n times: [0, 0.5, 1],\n },\n },\n };\n\n return (\n <motion.div\n className={cn(\"inline-flex items-center justify-center\", className)}\n onMouseEnter={handleEnter}\n onMouseLeave={handleLeave}\n {...props}\n style={{ color, ...props.style }}\n >\n <motion.svg\n width={size}\n height={size}\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke=\"currentColor\"\n strokeWidth=\"2\"\n strokeLinecap=\"round\"\n strokeLinejoin=\"round\"\n initial=\"normal\"\n animate={controls}\n variants={containerVariants}\n >\n {/* Body */}\n <path d=\"M15.5008 17.75L16.7942 19.5205C16.9156 19.7127 17.1489 19.7985 17.3619 19.7224C18.1657 19.4353 20.158 18.6572 21.7984 17.4725C21.9263 17.3801 22.0002 17.2261 21.9992 17.0673C21.9992 8.25 19.5008 5.75 19.5008 5.75C19.5008 5.75 17.5008 4.60213 15.3547 4.25602C15.1436 4.22196 14.9368 4.33509 14.8429 4.52891L14.3979 5.44677C14.3979 5.44677 13.2853 5.21397 12 5.21397C10.7147 5.21397 9.6021 5.44677 9.6021 5.44677L9.15711 4.52891C9.06314 4.33509 8.85644 4.22196 8.64529 4.25602C6.50079 4.60187 4.50079 5.75 4.50079 5.75C4.50079 5.75 2.0008 8.25 2.0008 17.0673C1.9998 17.2261 2.07365 17.3801 2.20159 17.4725C3.84196 18.6572 5.8343 19.4353 6.63806 19.7224C6.85105 19.7985 7.08437 19.7127 7.20582 19.5205L8.50079 17.75\" />\n\n {/* Smile */}\n <path d=\"M17.5008 16.75C17.5008 16.75 15.2057 18.25 12.0008 18.25C8.79587 18.25 6.50079 16.75 6.50079 16.75\" />\n\n {/* Eyes */}\n <motion.path\n d=\"M17.2508 12.25C17.2508 13.3546 16.4673 14.25 15.5008 14.25C14.5343 14.25 13.7508 13.3546 13.7508 12.25C13.7508 11.1454 14.5343 10.25 15.5008 10.25C16.4673 10.25 17.2508 11.1454 17.2508 12.25Z\"\n variants={eyeVariants}\n style={{ transformOrigin: \"center\" }}\n />\n\n <motion.path\n d=\"M10.2508 12.25C10.2508 13.3546 9.46729 14.25 8.50079 14.25C7.5343 14.25 6.75079 13.3546 6.75079 12.25C6.75079 11.1454 7.5343 10.25 8.50079 10.25C9.46729 10.25 10.2508 11.1454 10.2508 12.25Z\"\n variants={eyeVariants}\n style={{ transformOrigin: \"center\" }}\n />\n </motion.svg>\n </motion.div>\n );\n },\n);\n\nDiscordIcon.displayName = \"DiscordIcon\";\nexport { DiscordIcon };\n","\"use client\";\n\nimport { cn } from \"@/lib/utils\";\nimport type { HTMLMotionProps, Variants } from \"motion/react\";\nimport { motion, useAnimation, useReducedMotion } from \"motion/react\";\nimport { forwardRef, useCallback, useImperativeHandle, useRef } from \"react\";\n\nexport interface DownloadIconHandle {\n startAnimation: () => void;\n stopAnimation: () => void;\n}\n\ninterface DownloadIconProps extends HTMLMotionProps<\"div\"> {\n size?: number;\n duration?: number;\n isAnimated?: boolean;\n color?: string;\n}\n\nconst DownloadIcon = forwardRef<DownloadIconHandle, DownloadIconProps>(\n (\n {\n onMouseEnter,\n onMouseLeave,\n className,\n size = 24,\n duration = 1,\n isAnimated = true,\n color,\n ...props\n },\n ref,\n ) => {\n const controls = useAnimation();\n const reduced = useReducedMotion();\n const isControlled = useRef(false);\n\n useImperativeHandle(ref, () => {\n isControlled.current = true;\n return {\n startAnimation: () =>\n reduced ? controls.start(\"normal\") : controls.start(\"animate\"),\n stopAnimation: () => controls.start(\"normal\"),\n };\n });\n\n const handleEnter = useCallback(\n (e?: React.MouseEvent<HTMLDivElement>) => {\n if (!isAnimated || reduced) return;\n if (!isControlled.current) controls.start(\"animate\");\n else onMouseEnter?.(e as any);\n },\n [controls, reduced, isAnimated, onMouseEnter],\n );\n\n const handleLeave = useCallback(\n (e?: React.MouseEvent<HTMLDivElement>) => {\n if (!isControlled.current) controls.start(\"normal\");\n else onMouseLeave?.(e as any);\n },\n [controls, onMouseLeave],\n );\n\n const shaftVariants: Variants = {\n normal: { strokeDashoffset: 0, opacity: 1 },\n animate: {\n strokeDashoffset: [24, 0],\n opacity: [0.4, 1],\n transition: {\n duration: 0.6 * duration,\n ease: \"easeInOut\",\n },\n },\n };\n\n const headVariants: Variants = {\n normal: { y: 0, scale: 1, opacity: 1 },\n animate: {\n y: [-2, 2, 0],\n scale: [1, 1.05, 1],\n opacity: [0.6, 1],\n transition: {\n duration: 0.6 * duration,\n ease: \"easeInOut\",\n delay: 0.05 * duration,\n },\n },\n };\n\n const trayVariants: Variants = {\n normal: { strokeDashoffset: 0, opacity: 1 },\n animate: {\n strokeDashoffset: [40, 0],\n opacity: [0.3, 1],\n transition: {\n duration: 0.6 * duration,\n ease: \"easeInOut\",\n delay: 0.1 * duration,\n },\n },\n };\n\n const groupPulse: Variants = {\n normal: { scale: 1 },\n animate: {\n scale: [1, 1.02, 1],\n transition: {\n duration: 0.6 * duration,\n ease: \"easeInOut\",\n },\n },\n };\n\n return (\n <motion.div\n className={cn(\"inline-flex items-center justify-center\", className)}\n onMouseEnter={handleEnter}\n onMouseLeave={handleLeave}\n {...props}\n style={{ color, ...props.style }}\n >\n <motion.svg\n xmlns=\"http://www.w3.org/2000/svg\"\n width={size}\n height={size}\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke=\"currentColor\"\n strokeWidth=\"2\"\n strokeLinecap=\"round\"\n strokeLinejoin=\"round\"\n >\n <motion.g variants={groupPulse} initial=\"normal\" animate={controls}>\n <motion.path\n d=\"M11.9997 15.0002V3.00016\"\n strokeDasharray=\"24\"\n strokeDashoffset=\"24\"\n variants={shaftVariants}\n initial=\"normal\"\n animate={controls}\n />\n <motion.path\n d=\"M16.4998 11.5002C16.4998 11.5002 13.1856 16.0002 11.9997 16.0002C10.8139 16.0002 7.49976 11.5002 7.49976 11.5002\"\n variants={headVariants}\n initial=\"normal\"\n animate={controls}\n />\n <motion.path\n d=\"M2.99969 17.0002C2.99969 17.9302 2.99969 18.3952 3.10192 18.7767C3.37932 19.8119 4.18796 20.6206 5.22324 20.898C5.60474 21.0002 6.06972 21.0002 6.99969 21.0002L16.9997 21.0002C17.9297 21.0002 18.3947 21.0002 18.7762 20.898C19.8114 20.6206 20.6201 19.8119 20.8975 18.7767C20.9997 18.3952 20.9997 17.9302 20.9997 17.0002\"\n strokeDasharray=\"40\"\n strokeDashoffset=\"40\"\n variants={trayVariants}\n initial=\"normal\"\n animate={controls}\n />\n </motion.g>\n </motion.svg>\n </motion.div>\n );\n },\n);\n\nDownloadIcon.displayName = \"DownloadIcon\";\nexport { DownloadIcon };\n","\"use client\";\n\nimport { cn } from \"@/lib/utils\";\nimport type { HTMLMotionProps, Variants } from \"motion/react\";\nimport { motion, useAnimation, useReducedMotion } from \"motion/react\";\nimport { forwardRef, useCallback, useImperativeHandle, useRef } from \"react\";\n\nexport interface EyeIconHandle {\n startAnimation: () => void;\n stopAnimation: () => void;\n}\n\ninterface EyeIconProps extends HTMLMotionProps<\"div\"> {\n size?: number;\n duration?: number;\n isAnimated?: boolean;\n color?: string;\n}\n\nconst EyeIcon = forwardRef<EyeIconHandle, EyeIconProps>(\n (\n {\n onMouseEnter,\n onMouseLeave,\n className,\n size = 24,\n duration = 1,\n isAnimated = true,\n color,\n ...props\n },\n ref,\n ) => {\n const eyeControls = useAnimation();\n const pupilControls = useAnimation();\n const reduced = useReducedMotion();\n const isControlled = useRef(false);\n\n useImperativeHandle(ref, () => {\n isControlled.current = true;\n return {\n startAnimation: () => {\n if (reduced) {\n eyeControls.start(\"open\");\n pupilControls.start(\"center\");\n } else {\n eyeControls.start(\"blink\");\n pupilControls.start(\"scan\");\n }\n },\n stopAnimation: () => {\n eyeControls.start(\"open\");\n pupilControls.start(\"center\");\n },\n };\n });\n\n const handleEnter = useCallback(\n (e?: React.MouseEvent<HTMLDivElement>) => {\n if (!isAnimated || reduced) return;\n if (!isControlled.current) {\n eyeControls.start(\"blink\");\n pupilControls.start(\"scan\");\n } else {\n onMouseEnter?.(e as any);\n }\n },\n [eyeControls, pupilControls, onMouseEnter, reduced, isAnimated],\n );\n\n const handleLeave = useCallback(\n (e: React.MouseEvent<HTMLDivElement>) => {\n if (!isControlled.current) {\n eyeControls.start(\"open\");\n pupilControls.start(\"center\");\n } else {\n onMouseLeave?.(e as any);\n }\n },\n [eyeControls, pupilControls, onMouseLeave],\n );\n\n const eyeVariants: Variants = {\n open: { scaleY: 1 },\n blink: {\n scaleY: [1, 0.1, 1],\n transition: {\n duration: 0.25 * duration,\n ease: \"easeInOut\",\n },\n },\n };\n\n const pupilVariants: Variants = {\n center: { x: 0 },\n scan: {\n x: [-2, 2, -1, 1, 0],\n transition: {\n duration: 1.6 * duration,\n ease: \"easeInOut\",\n },\n },\n };\n\n return (\n <motion.div\n className={cn(\"inline-flex items-center justify-center\", className)}\n onMouseEnter={handleEnter}\n onMouseLeave={handleLeave}\n {...props}\n style={{ color, ...props.style }}\n >\n <svg\n xmlns=\"http://www.w3.org/2000/svg\"\n width={size}\n height={size}\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke=\"currentColor\"\n strokeWidth=\"2\"\n strokeLinecap=\"round\"\n strokeLinejoin=\"round\"\n >\n <motion.path\n d=\"M21.544 11.045C21.848 11.4713 22 11.6845 22 12C22 12.3155 21.848 12.5287 21.544 12.955C20.1779 14.8706 16.6892 19 12 19C7.31078 19 3.8221 14.8706 2.45604 12.955C2.15201 12.5287 2 12.3155 2 12C2 11.6845 2.15201 11.4713 2.45604 11.045C3.8221 9.12944 7.31078 5 12 5C16.6892 5 20.1779 9.12944 21.544 11.045Z\"\n animate={eyeControls}\n initial=\"open\"\n variants={eyeVariants}\n style={{\n transformBox: \"fill-box\",\n transformOrigin: \"center\",\n }}\n />\n <motion.circle\n cx=\"12\"\n cy=\"12\"\n r=\"3\"\n animate={pupilControls}\n initial=\"center\"\n variants={pupilVariants}\n />\n </svg>\n </motion.div>\n );\n },\n);\n\nEyeIcon.displayName = \"EyeIcon\";\nexport { EyeIcon };\n","\"use client\";\n\nimport { cn } from \"@/lib/utils\";\nimport type { HTMLMotionProps, Variants } from \"motion/react\";\nimport { motion, useAnimation, useReducedMotion } from \"motion/react\";\nimport { forwardRef, useCallback, useImperativeHandle, useRef } from \"react\";\n\nexport interface FacebookIconHandle {\n startAnimation: () => void;\n stopAnimation: () => void;\n}\n\ninterface FacebookIconProps extends HTMLMotionProps<\"div\"> {\n size?: number;\n duration?: number;\n isAnimated?: boolean;\n color?: string;\n}\n\nconst FacebookIcon = forwardRef<FacebookIconHandle, FacebookIconProps>(\n (\n {\n onMouseEnter,\n onMouseLeave,\n className,\n size = 24,\n duration = 1,\n isAnimated = true,\n color,\n ...props\n },\n ref,\n ) => {\n const controls = useAnimation();\n const reduced = useReducedMotion();\n const isControlled = useRef(false);\n\n useImperativeHandle(ref, () => {\n isControlled.current = true;\n return {\n startAnimation: () =>\n reduced ? controls.start(\"normal\") : controls.start(\"animate\"),\n stopAnimation: () => controls.start(\"normal\"),\n };\n });\n\n const handleEnter = useCallback(\n (e?: React.MouseEvent<HTMLDivElement>) => {\n if (!isAnimated || reduced) return;\n if (!isControlled.current) controls.start(\"animate\");\n else onMouseEnter?.(e as any);\n },\n [controls, reduced, isAnimated, onMouseEnter],\n );\n\n const handleLeave = useCallback(\n (e?: React.MouseEvent<HTMLDivElement>) => {\n if (!isControlled.current) controls.start(\"normal\");\n else onMouseLeave?.(e as any);\n },\n [controls, onMouseLeave],\n );\n\n const containerVariants: Variants = {\n normal: {\n scale: 1,\n y: 0,\n },\n animate: {\n scale: [1, 1.035, 1],\n y: [0, -1, 0],\n transition: {\n duration: 0.8 * duration,\n ease: \"easeInOut\",\n },\n },\n };\n\n const logoVariants: Variants = {\n normal: {\n pathLength: 1,\n opacity: 1,\n },\n animate: {\n pathLength: [0, 1],\n opacity: [0.4, 1],\n transition: {\n duration: 0.9 * duration,\n ease: \"easeInOut\",\n delay: 0.1,\n },\n },\n };\n\n return (\n <motion.div\n className={cn(\"inline-flex items-center justify-center\", className)}\n onMouseEnter={handleEnter}\n onMouseLeave={handleLeave}\n {...props}\n style={{ color, ...props.style }}\n >\n <motion.svg\n width={size}\n height={size}\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke=\"currentColor\"\n strokeWidth=\"2\"\n strokeLinejoin=\"round\"\n initial=\"normal\"\n animate={controls}\n variants={containerVariants}\n >\n <motion.path\n fillRule=\"evenodd\"\n clipRule=\"evenodd\"\n d=\"M6.18182 10.3333C5.20406 10.3333 5 10.5252 5 11.4444V13.1111C5 14.0304 5.20406 14.2222 6.18182 14.2222H8.54545V20.8889C8.54545 21.8081 8.74951 22 9.72727 22H12.0909C13.0687 22 13.2727 21.8081 13.2727 20.8889V14.2222H15.9267C16.6683 14.2222 16.8594 14.0867 17.0631 13.4164L17.5696 11.7497C17.9185 10.6014 17.7035 10.3333 16.4332 10.3333H13.2727V7.55556C13.2727 6.94191 13.8018 6.44444 14.4545 6.44444H17.8182C18.7959 6.44444 19 6.25259 19 5.33333V3.11111C19 2.19185 18.7959 2 17.8182 2H14.4545C11.191 2 8.54545 4.48731 8.54545 7.55556V10.3333H6.18182Z\"\n variants={logoVariants}\n style={{\n transformBox: \"fill-box\",\n transformOrigin: \"center\",\n }}\n />\n </motion.svg>\n </motion.div>\n );\n },\n);\n\nFacebookIcon.displayName = \"FacebookIcon\";\nexport { FacebookIcon };\n","\"use client\";\n\nimport { cn } from \"@/lib/utils\";\nimport type { HTMLMotionProps, Variants } from \"motion/react\";\nimport { motion, useAnimation, useReducedMotion } from \"motion/react\";\nimport { forwardRef, useCallback, useImperativeHandle, useRef } from \"react\";\n\nexport interface FigmaIconHandle {\n startAnimation: () => void;\n stopAnimation: () => void;\n}\n\ninterface FigmaIconProps extends HTMLMotionProps<\"div\"> {\n size?: number;\n duration?: number;\n isAnimated?: boolean;\n color?: string;\n}\n\nconst FigmaIcon = forwardRef<FigmaIconHandle, FigmaIconProps>(\n (\n {\n onMouseEnter,\n onMouseLeave,\n className,\n size = 24,\n duration = 1,\n isAnimated = true,\n color,\n ...props\n },\n ref,\n ) => {\n const controls = useAnimation();\n const reduced = useReducedMotion();\n const isControlled = useRef(false);\n\n useImperativeHandle(ref, () => {\n isControlled.current = true;\n return {\n startAnimation: () =>\n reduced ? controls.start(\"normal\") : controls.start(\"animate\"),\n stopAnimation: () => controls.start(\"normal\"),\n };\n });\n\n const handleEnter = useCallback(\n (e?: React.MouseEvent<HTMLDivElement>) => {\n if (!isAnimated || reduced) return;\n if (!isControlled.current) controls.start(\"animate\");\n else onMouseEnter?.(e as any);\n },\n [controls, reduced, isAnimated, onMouseEnter],\n );\n\n const handleLeave = useCallback(\n (e?: React.MouseEvent<HTMLDivElement>) => {\n if (!isControlled.current) controls.start(\"normal\");\n else onMouseLeave?.(e as any);\n },\n [controls, onMouseLeave],\n );\n\n const containerVariants: Variants = {\n normal: {\n scale: 1,\n y: 0,\n },\n animate: {\n scale: [1, 1.04, 1],\n y: [0, -1, 0],\n transition: {\n duration: 0.7 * duration,\n ease: \"easeInOut\",\n },\n },\n };\n\n const segmentVariants: Variants = {\n normal: {\n opacity: 1,\n y: 0,\n },\n animate: (i: number) => ({\n opacity: [0, 1],\n y: [3, 0],\n transition: {\n duration: 0.45 * duration,\n ease: \"easeOut\",\n delay: i * 0.08,\n },\n }),\n };\n\n return (\n <motion.div\n className={cn(\"inline-flex items-center justify-center\", className)}\n onMouseEnter={handleEnter}\n onMouseLeave={handleLeave}\n {...props}\n style={{ color, ...props.style }}\n >\n <motion.svg\n width={size}\n height={size}\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke=\"currentColor\"\n strokeWidth=\"2\"\n strokeLinejoin=\"round\"\n initial=\"normal\"\n animate={controls}\n variants={containerVariants}\n >\n <motion.path\n d=\"M12 3V9H9C7.34315 9 6 7.65685 6 6C6 4.34315 7.34315 3 9 3H12Z\"\n variants={segmentVariants}\n custom={0}\n />\n\n <motion.path\n d=\"M12 3V9H15C16.6569 9 18 7.65685 18 6C18 4.34315 16.6569 3 15 3H12Z\"\n variants={segmentVariants}\n custom={1}\n />\n\n <motion.path\n d=\"M12 9V15H9C7.34315 15 6 13.6569 6 12C6 10.3431 7.34315 9 9 9H12Z\"\n variants={segmentVariants}\n custom={2}\n />\n\n <motion.path\n d=\"M9 21C10.6569 21 12 19.6569 12 18V15H9C7.34315 15 6 16.3431 6 18C6 19.6569 7.34315 21 9 21Z\"\n variants={segmentVariants}\n custom={3}\n />\n\n <motion.circle\n cx=\"15\"\n cy=\"12\"\n r=\"3\"\n variants={segmentVariants}\n custom={4}\n />\n </motion.svg>\n </motion.div>\n );\n },\n);\n\nFigmaIcon.displayName = \"FigmaIcon\";\nexport { FigmaIcon };\n","\"use client\";\n\nimport { cn } from \"@/lib/utils\";\nimport type { HTMLMotionProps, Variants } from \"motion/react\";\nimport { motion, useAnimation, useReducedMotion } from \"motion/react\";\nimport { forwardRef, useCallback, useImperativeHandle, useRef } from \"react\";\n\nexport interface GithubIconHandle {\n startAnimation: () => void;\n stopAnimation: () => void;\n}\n\ninterface GithubIconProps extends HTMLMotionProps<\"div\"> {\n size?: number;\n duration?: number;\n isAnimated?: boolean;\n color?: string;\n}\n\nconst GithubIcon = forwardRef<GithubIconHandle, GithubIconProps>(\n (\n {\n onMouseEnter,\n onMouseLeave,\n className,\n size = 24,\n duration = 1,\n isAnimated = true,\n color,\n ...props\n },\n ref,\n ) => {\n const controls = useAnimation();\n const reduced = useReducedMotion();\n const isControlled = useRef(false);\n\n useImperativeHandle(ref, () => {\n isControlled.current = true;\n return {\n startAnimation: () =>\n reduced ? controls.start(\"normal\") : controls.start(\"animate\"),\n stopAnimation: () => controls.start(\"normal\"),\n };\n });\n\n const handleEnter = useCallback(\n (e?: React.MouseEvent<HTMLDivElement>) => {\n if (!isAnimated || reduced) return;\n if (!isControlled.current) controls.start(\"animate\");\n else onMouseEnter?.(e as any);\n },\n [controls, reduced, isAnimated, onMouseEnter],\n );\n\n const handleLeave = useCallback(\n (e?: React.MouseEvent<HTMLDivElement>) => {\n if (!isControlled.current) controls.start(\"normal\");\n else onMouseLeave?.(e as any);\n },\n [controls, onMouseLeave],\n );\n\n const containerVariants: Variants = {\n normal: {\n scale: 1,\n y: 0,\n opacity: 1,\n },\n animate: {\n scale: [1, 1.06, 1],\n y: [0, -2, 0],\n opacity: [1, 0.9, 1],\n transition: {\n duration: 0.6 * duration,\n ease: \"easeInOut\",\n },\n },\n };\n\n const pathVariants: Variants = {\n normal: {\n pathLength: 1,\n opacity: 1,\n },\n animate: {\n pathLength: [0.6, 1],\n opacity: [0.5, 1],\n transition: {\n duration: 0.8 * duration,\n ease: \"easeInOut\",\n },\n },\n };\n\n return (\n <motion.div\n className={cn(\"inline-flex items-center justify-center\", className)}\n onMouseEnter={handleEnter}\n onMouseLeave={handleLeave}\n {...props}\n style={{ color, ...props.style }}\n >\n <motion.svg\n xmlns=\"http://www.w3.org/2000/svg\"\n width={size}\n height={size}\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke=\"currentColor\"\n strokeWidth=\"2\"\n strokeLinecap=\"round\"\n strokeLinejoin=\"round\"\n initial=\"normal\"\n animate={controls}\n variants={containerVariants}\n style={{ transformOrigin: \"center\" }}\n >\n <motion.path\n d=\"M10 20.5675C6.57143 21.7248 3.71429 20.5675 2 17\"\n variants={pathVariants}\n />\n <motion.path\n d=\"M10 22V18.7579C10 18.1596 10.1839 17.6396 10.4804 17.1699C10.6838 16.8476 10.5445 16.3904 10.1771 16.2894C7.13394 15.4528 5 14.1077 5 9.64606C5 8.48611 5.38005 7.39556 6.04811 6.4464C6.21437 6.21018 6.29749 6.09208 6.31748 5.9851C6.33746 5.87813 6.30272 5.73852 6.23322 5.45932C5.95038 4.32292 5.96871 3.11619 6.39322 2.02823C6.39322 2.02823 7.27042 1.74242 9.26698 2.98969C9.72282 3.27447 9.95075 3.41686 10.1515 3.44871C10.3522 3.48056 10.6206 3.41384 11.1573 3.28041C11.8913 3.09795 12.6476 3 13.5 3C14.3524 3 15.1087 3.09795 15.8427 3.28041C16.3794 3.41384 16.6478 3.48056 16.8485 3.44871C17.0493 3.41686 17.2772 3.27447 17.733 2.98969C19.7296 1.74242 20.6068 2.02823 20.6068 2.02823C21.0313 3.11619 21.0496 4.32292 20.7668 5.45932C20.6973 5.73852 20.6625 5.87813 20.6825 5.9851C20.7025 6.09207 20.7856 6.21019 20.9519 6.4464C21.6199 7.39556 22 8.48611 22 9.64606C22 14.1077 19.8661 15.4528 16.8229 16.2894C16.4555 16.3904 16.3162 16.8476 16.5196 17.1699C16.8161 17.6396 17 18.1596 17 18.7579V22\"\n variants={pathVariants}\n />\n </motion.svg>\n </motion.div>\n );\n },\n);\n\nGithubIcon.displayName = \"GithubIcon\";\nexport { GithubIcon };\n","\"use client\";\n\nimport { cn } from \"@/lib/utils\";\nimport type { HTMLMotionProps, Variants } from \"motion/react\";\nimport { motion, useAnimation, useReducedMotion } from \"motion/react\";\nimport { forwardRef, useCallback, useImperativeHandle, useRef } from \"react\";\n\nexport interface HeartIconHandle {\n startAnimation: () => void;\n stopAnimation: () => void;\n}\n\ninterface HeartIconProps extends HTMLMotionProps<\"div\"> {\n size?: number;\n duration?: number;\n isAnimated?: boolean;\n color?: string;\n}\n\nconst HeartIcon = forwardRef<HeartIconHandle, HeartIconProps>(\n (\n {\n onMouseEnter,\n onMouseLeave,\n className,\n size = 24,\n duration = 1,\n isAnimated = true,\n color,\n ...props\n },\n ref,\n ) => {\n const controls = useAnimation();\n const reduced = useReducedMotion();\n const isControlled = useRef(false);\n\n useImperativeHandle(ref, () => {\n isControlled.current = true;\n return {\n startAnimation: () =>\n reduced ? controls.start(\"normal\") : controls.start(\"animate\"),\n stopAnimation: () => controls.start(\"normal\"),\n };\n });\n\n const handleEnter = useCallback(\n (e?: React.MouseEvent<HTMLDivElement>) => {\n if (!isAnimated || reduced) return;\n if (!isControlled.current) controls.start(\"animate\");\n else onMouseEnter?.(e as any);\n },\n [controls, reduced, isAnimated, onMouseEnter],\n );\n\n const handleLeave = useCallback(\n (e: React.MouseEvent<HTMLDivElement>) => {\n if (!isControlled.current) controls.start(\"normal\");\n else onMouseLeave?.(e as any);\n },\n [controls, onMouseLeave],\n );\n\n const svgVariant: Variants = {\n normal: { scale: 1 },\n animate: {\n scale: [1, 1.06, 1],\n transition: {\n duration: 0.3 * duration,\n delay: 0.9 * duration,\n ease: \"easeInOut\",\n },\n },\n };\n\n const pathVariant: Variants = {\n normal: {\n pathLength: 1,\n opacity: 1,\n fillOpacity: 0,\n },\n animate: {\n pathLength: [0, 1],\n fillOpacity: [0],\n transition: {\n pathLength: {\n duration: 0.8 * duration,\n ease: \"easeInOut\",\n },\n fillOpacity: {\n duration: 0.3 * duration,\n delay: 0.8 * duration,\n ease: \"easeInOut\",\n },\n },\n },\n };\n\n return (\n <motion.div\n className={cn(\"inline-flex items-center justify-center\", className)}\n onMouseEnter={handleEnter}\n onMouseLeave={handleLeave}\n {...props}\n style={{ color, ...props.style }}\n >\n <motion.svg\n xmlns=\"http://www.w3.org/2000/svg\"\n width={size}\n height={size}\n viewBox=\"0 0 24 24\"\n fill=\"currentColor\"\n stroke=\"currentColor\"\n strokeWidth=\"2\"\n strokeLinecap=\"round\"\n strokeLinejoin=\"round\"\n animate={controls}\n initial=\"normal\"\n variants={svgVariant}\n >\n <motion.path\n d=\"M10.4107 19.9677C7.58942 17.858 2 13.0348 2 8.69444C2 5.82563 4.10526 3.5 7 3.5C8.5 3.5 10 4 12 6C14 4 15.5 3.5 17 3.5C19.8947 3.5 22 5.82563 22 8.69444C22 13.0348 16.4106 17.858 13.5893 19.9677C12.6399 20.6776 11.3601 20.6776 10.4107 19.9677Z\"\n variants={pathVariant}\n />\n </motion.svg>\n </motion.div>\n );\n },\n);\n\nHeartIcon.displayName = \"HeartIcon\";\nexport { HeartIcon };\n","\"use client\";\n\nimport { cn } from \"@/lib/utils\";\nimport type { HTMLMotionProps, Variants } from \"motion/react\";\nimport { motion, useAnimation, useReducedMotion } from \"motion/react\";\nimport { forwardRef, useCallback, useImperativeHandle, useRef } from \"react\";\n\nexport interface Loading01IconHandle {\n startAnimation: () => void;\n stopAnimation: () => void;\n}\n\ninterface Loading01IconProps extends HTMLMotionProps<\"div\"> {\n size?: number;\n duration?: number;\n isAnimated?: boolean;\n color?: string;\n}\n\nconst Loading01Icon = forwardRef<Loading01IconHandle, Loading01IconProps>(\n (\n {\n onMouseEnter,\n onMouseLeave,\n className,\n size = 24,\n duration = 1,\n isAnimated = true,\n color,\n ...props\n },\n ref,\n ) => {\n const controls = useAnimation();\n const reduced = useReducedMotion();\n const isControlled = useRef(false);\n\n useImperativeHandle(ref, () => {\n isControlled.current = true;\n return {\n startAnimation: () =>\n reduced ? controls.start(\"normal\") : controls.start(\"animate\"),\n stopAnimation: () => controls.start(\"normal\"),\n };\n });\n\n const handleEnter = useCallback(\n (e?: React.MouseEvent<HTMLDivElement>) => {\n if (!isAnimated || reduced) return;\n if (!isControlled.current) controls.start(\"animate\");\n else onMouseEnter?.(e as any);\n },\n [controls, reduced, isAnimated, onMouseEnter],\n );\n\n const handleLeave = useCallback(\n (e?: React.MouseEvent<HTMLDivElement>) => {\n if (!isControlled.current) controls.start(\"normal\");\n else onMouseLeave?.(e as any);\n },\n [controls, onMouseLeave],\n );\n\n const loaderVariants: Variants = {\n normal: { rotate: 0, scale: 1, transition: { duration: 0.3 * duration } },\n animate: {\n rotate: 360,\n scale: [1, 1.1, 1],\n transition: {\n rotate: { duration: 1 * duration, ease: \"linear\", repeat: Infinity },\n scale: {\n duration: 0.6 * duration,\n repeat: Infinity,\n repeatType: \"mirror\",\n },\n },\n },\n };\n\n return (\n <motion.div\n className={cn(\"inline-flex items-center justify-center\", className)}\n onMouseEnter={handleEnter}\n onMouseLeave={handleLeave}\n {...props}\n style={{ color, ...props.style }}\n >\n <motion.svg\n xmlns=\"http://www.w3.org/2000/svg\"\n width={size}\n height={size}\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke=\"currentColor\"\n strokeWidth=\"2\"\n strokeLinecap=\"round\"\n initial=\"normal\"\n animate={controls}\n variants={loaderVariants}\n style={{ transformOrigin: \"center\" }}\n >\n <path d=\"M12 3V6\" />\n <path d=\"M12 18V21\" />\n <path d=\"M21 12L18 12\" />\n <path d=\"M6 12L3 12\" />\n <path d=\"M18.3635 5.63672L16.2422 7.75804\" />\n <path d=\"M7.75804 16.2422L5.63672 18.3635\" />\n <path d=\"M18.3635 18.3635L16.2422 16.2422\" />\n <path d=\"M7.75804 7.75804L5.63672 5.63672\" />\n </motion.svg>\n </motion.div>\n );\n },\n);\n\nLoading01Icon.displayName = \"Loading01Icon\";\nexport { Loading01Icon };\n","\"use client\";\n\nimport { cn } from \"@/lib/utils\";\nimport type { HTMLMotionProps, Variants } from \"motion/react\";\nimport { motion, useAnimation, useReducedMotion } from \"motion/react\";\nimport { forwardRef, useCallback, useImperativeHandle, useRef } from \"react\";\n\nexport interface Loading02IconHandle {\n startAnimation: () => void;\n stopAnimation: () => void;\n}\n\ninterface Loading02IconProps extends HTMLMotionProps<\"div\"> {\n size?: number;\n duration?: number;\n isAnimated?: boolean;\n color?: string;\n}\n\nconst Loading02Icon = forwardRef<Loading02IconHandle, Loading02IconProps>(\n (\n {\n onMouseEnter,\n onMouseLeave,\n className,\n size = 24,\n duration = 1,\n isAnimated = true,\n color,\n ...props\n },\n ref,\n ) => {\n const controls = useAnimation();\n const reduced = useReducedMotion();\n const isControlled = useRef(false);\n\n useImperativeHandle(ref, () => {\n isControlled.current = true;\n return {\n startAnimation: () =>\n reduced ? controls.start(\"normal\") : controls.start(\"animate\"),\n stopAnimation: () => controls.start(\"normal\"),\n };\n });\n\n const handleEnter = useCallback(\n (e?: React.MouseEvent<HTMLDivElement>) => {\n if (!isAnimated || reduced) return;\n if (!isControlled.current) controls.start(\"animate\");\n else onMouseEnter?.(e as any);\n },\n [controls, reduced, isAnimated, onMouseEnter],\n );\n\n const handleLeave = useCallback(\n (e?: React.MouseEvent<HTMLDivElement>) => {\n if (!isControlled.current) controls.start(\"normal\");\n else onMouseLeave?.(e as any);\n },\n [controls, onMouseLeave],\n );\n\n const loaderVariants: Variants = {\n normal: { rotate: 0, scale: 1, transition: { duration: 0.3 * duration } },\n animate: {\n rotate: 360,\n scale: [1, 1.1, 1],\n transition: {\n rotate: { duration: 1 * duration, ease: \"linear\", repeat: Infinity },\n scale: {\n duration: 0.6 * duration,\n repeat: Infinity,\n repeatType: \"mirror\",\n },\n },\n },\n };\n\n return (\n <motion.div\n className={cn(\"inline-flex items-center justify-center\", className)}\n onMouseEnter={handleEnter}\n onMouseLeave={handleLeave}\n {...props}\n style={{ color, ...props.style }}\n >\n <motion.svg\n xmlns=\"http://www.w3.org/2000/svg\"\n width={size}\n height={size}\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke=\"currentColor\"\n strokeWidth=\"2\"\n strokeLinecap=\"round\"\n initial=\"normal\"\n animate={controls}\n variants={loaderVariants}\n style={{ transformOrigin: \"center\" }}\n >\n <path d=\"M18.001 20C16.3295 21.2558 14.2516 22 12 22C6.47715 22 2 17.5228 2 12C2 6.47715 6.47715 2 12 2C17.5228 2 22 6.47715 22 12C22 12.8634 21.8906 13.7011 21.6849 14.5003C21.4617 15.3673 20.5145 15.77 19.6699 15.4728C18.9519 15.2201 18.6221 14.3997 18.802 13.66C18.9314 13.1279 19 12.572 19 12C19 8.13401 15.866 5 12 5C8.13401 5 5 8.13401 5 12C5 15.866 8.13401 19 12 19C13.3197 19 14.554 18.6348 15.6076 18\" />\n </motion.svg>\n </motion.div>\n );\n },\n);\n\nLoading02Icon.displayName = \"Loading02Icon\";\nexport { Loading02Icon };\n","\"use client\";\n\nimport { cn } from \"@/lib/utils\";\nimport type { HTMLMotionProps, Variants } from \"motion/react\";\nimport { motion, useAnimation, useReducedMotion } from \"motion/react\";\nimport { forwardRef, useCallback, useImperativeHandle, useRef } from \"react\";\n\nexport interface Menu01IconHandle {\n startAnimation: () => void;\n stopAnimation: () => void;\n}\n\ninterface Menu01IconProps extends HTMLMotionProps<\"div\"> {\n size?: number;\n duration?: number;\n isAnimated?: boolean;\n color?: string;\n}\n\nconst Menu01Icon = forwardRef<Menu01IconHandle, Menu01IconProps>(\n (\n {\n onMouseEnter,\n onMouseLeave,\n className,\n size = 24,\n duration = 1,\n isAnimated = true,\n color,\n ...props\n },\n ref,\n ) => {\n const controls = useAnimation();\n const reduced = useReducedMotion();\n const isControlled = useRef(false);\n\n useImperativeHandle(ref, () => {\n isControlled.current = true;\n return {\n startAnimation: () =>\n reduced ? controls.start(\"normal\") : controls.start(\"animate\"),\n stopAnimation: () => controls.start(\"normal\"),\n };\n });\n\n const handleEnter = useCallback(\n (e?: React.MouseEvent<HTMLDivElement>) => {\n if (!isAnimated || reduced) return;\n if (!isControlled.current) controls.start(\"animate\");\n else onMouseEnter?.(e as any);\n },\n [controls, reduced, isAnimated, onMouseEnter],\n );\n\n const handleLeave = useCallback(\n (e?: React.MouseEvent<HTMLDivElement>) => {\n if (!isControlled.current) controls.start(\"normal\");\n else onMouseLeave?.(e as any);\n },\n [controls, onMouseLeave],\n );\n\n const topVariants: Variants = {\n normal: {\n x: 0,\n scaleX: 1,\n },\n animate: {\n x: 3,\n scaleX: 0.85,\n transition: {\n duration: 0.25 * duration,\n ease: \"easeOut\",\n delay: 0,\n },\n },\n };\n\n const middleVariants: Variants = {\n normal: {\n x: 0,\n scaleX: 1,\n },\n animate: {\n x: 5,\n scaleX: 0.7,\n transition: {\n duration: 0.25 * duration,\n ease: \"easeOut\",\n delay: 0.05 * duration,\n },\n },\n };\n\n const bottomVariants: Variants = {\n normal: {\n x: 0,\n scaleX: 1,\n },\n animate: {\n x: 7,\n scaleX: 0.55,\n transition: {\n duration: 0.25 * duration,\n ease: \"easeOut\",\n delay: 0.1 * duration,\n },\n },\n };\n\n return (\n <motion.div\n className={cn(\"inline-flex items-center justify-center\", className)}\n onMouseEnter={handleEnter}\n onMouseLeave={handleLeave}\n {...props}\n style={{ color, ...props.style }}\n >\n <motion.svg\n xmlns=\"http://www.w3.org/2000/svg\"\n width={size}\n height={size}\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke=\"currentColor\"\n strokeWidth=\"2\"\n strokeLinecap=\"round\"\n strokeLinejoin=\"round\"\n initial=\"normal\"\n animate={controls}\n >\n <motion.path\n d=\"M4 5L20 5\"\n variants={topVariants}\n style={{ transformOrigin: \"left center\" }}\n />\n\n <motion.path\n d=\"M4 12L20 12\"\n variants={middleVariants}\n style={{ transformOrigin: \"left center\" }}\n />\n\n <motion.path\n d=\"M4 19L20 19\"\n variants={bottomVariants}\n style={{ transformOrigin: \"left center\" }}\n />\n </motion.svg>\n </motion.div>\n );\n },\n);\n\nMenu01Icon.displayName = \"Menu01Icon\";\nexport { Menu01Icon };\n","\"use client\";\n\nimport { cn } from \"@/lib/utils\";\nimport type { HTMLMotionProps, Variants } from \"motion/react\";\nimport { motion, useAnimation, useReducedMotion } from \"motion/react\";\nimport { forwardRef, useCallback, useImperativeHandle, useRef } from \"react\";\n\nexport interface Menu02IconHandle {\n startAnimation: () => void;\n stopAnimation: () => void;\n}\n\ninterface Menu02IconProps extends HTMLMotionProps<\"div\"> {\n size?: number;\n duration?: number;\n isAnimated?: boolean;\n color?: string;\n}\n\nconst Menu02Icon = forwardRef<Menu02IconHandle, Menu02IconProps>(\n (\n {\n onMouseEnter,\n onMouseLeave,\n className,\n size = 24,\n duration = 1,\n isAnimated = true,\n color,\n ...props\n },\n ref,\n ) => {\n const controls = useAnimation();\n const reduced = useReducedMotion();\n const isControlled = useRef(false);\n\n useImperativeHandle(ref, () => {\n isControlled.current = true;\n return {\n startAnimation: () =>\n reduced ? controls.start(\"normal\") : controls.start(\"animate\"),\n stopAnimation: () => controls.start(\"normal\"),\n };\n });\n\n const handleEnter = useCallback(\n (e?: React.MouseEvent<HTMLDivElement>) => {\n if (!isAnimated || reduced) return;\n if (!isControlled.current) controls.start(\"animate\");\n else onMouseEnter?.(e as any);\n },\n [controls, reduced, isAnimated, onMouseEnter],\n );\n\n const handleLeave = useCallback(\n (e?: React.MouseEvent<HTMLDivElement>) => {\n if (!isControlled.current) controls.start(\"normal\");\n else onMouseLeave?.(e as any);\n },\n [controls, onMouseLeave],\n );\n\n const topVariants: Variants = {\n normal: { x: 0 },\n animate: {\n x: 6,\n transition: {\n type: \"spring\",\n stiffness: 300,\n damping: 18,\n delay: 0,\n duration: 0.4 * duration,\n },\n },\n };\n\n const middleVariants: Variants = {\n normal: { x: 0 },\n animate: {\n x: 10,\n transition: {\n type: \"spring\",\n stiffness: 300,\n damping: 18,\n delay: 0.05 * duration,\n duration: 0.4 * duration,\n },\n },\n };\n\n const bottomVariants: Variants = {\n normal: { x: 0 },\n animate: {\n x: 6,\n transition: {\n type: \"spring\",\n stiffness: 300,\n damping: 18,\n delay: 0.1 * duration,\n duration: 0.4 * duration,\n },\n },\n };\n\n return (\n <motion.div\n className={cn(\"inline-flex items-center justify-center\", className)}\n onMouseEnter={handleEnter}\n onMouseLeave={handleLeave}\n {...props}\n style={{ color, ...props.style }}\n >\n <motion.svg\n xmlns=\"http://www.w3.org/2000/svg\"\n width={size}\n height={size}\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke=\"currentColor\"\n strokeWidth=\"2\"\n strokeLinecap=\"round\"\n strokeLinejoin=\"round\"\n initial=\"normal\"\n animate={controls}\n >\n <motion.path\n d=\"M20 5L4 5\"\n variants={topVariants}\n style={{ transformOrigin: \"right center\" }}\n />\n\n <motion.path\n d=\"M20 12L10 12\"\n variants={middleVariants}\n style={{ transformOrigin: \"right center\" }}\n />\n\n <motion.path\n d=\"M20 19L4 19\"\n variants={bottomVariants}\n style={{ transformOrigin: \"right center\" }}\n />\n </motion.svg>\n </motion.div>\n );\n },\n);\n\nMenu02Icon.displayName = \"Menu02Icon\";\nexport { Menu02Icon };\n","\"use client\";\n\nimport { cn } from \"@/lib/utils\";\nimport type { HTMLMotionProps, Variants } from \"motion/react\";\nimport { motion, useAnimation, useReducedMotion } from \"motion/react\";\nimport { forwardRef, useCallback, useImperativeHandle, useRef } from \"react\";\n\nexport interface MousePointerClick01IconHandle {\n startAnimation: () => void;\n stopAnimation: () => void;\n}\n\ninterface MousePointerClick01IconProps extends HTMLMotionProps<\"div\"> {\n size?: number;\n duration?: number;\n isAnimated?: boolean;\n color?: string;\n}\n\nconst MousePointerClick01Icon = forwardRef<\n MousePointerClick01IconHandle,\n MousePointerClick01IconProps\n>(\n (\n {\n onMouseEnter,\n onMouseLeave,\n className,\n size = 24,\n duration = 1,\n isAnimated = true,\n color,\n ...props\n },\n ref,\n ) => {\n const controls = useAnimation();\n const reduced = useReducedMotion();\n const isControlled = useRef(false);\n\n useImperativeHandle(ref, () => {\n isControlled.current = true;\n return {\n startAnimation: () =>\n reduced ? controls.start(\"normal\") : controls.start(\"animate\"),\n stopAnimation: () => controls.start(\"normal\"),\n };\n });\n\n const handleEnter = useCallback(\n (e?: React.MouseEvent<HTMLDivElement>) => {\n if (!isAnimated || reduced) return;\n if (!isControlled.current) controls.start(\"animate\");\n else onMouseEnter?.(e as any);\n },\n [controls, reduced, isAnimated, onMouseEnter],\n );\n\n const handleLeave = useCallback(\n (e?: React.MouseEvent<HTMLDivElement>) => {\n if (!isControlled.current) controls.start(\"normal\");\n else onMouseLeave?.(e as any);\n },\n [controls, onMouseLeave],\n );\n\n const pointerVariants: Variants = {\n normal: {\n scale: 1,\n y: 0,\n },\n animate: {\n scale: [1, 0.95, 1],\n y: [0, 1, 0],\n transition: {\n duration: 0.5 * duration,\n ease: \"easeInOut\",\n },\n },\n };\n\n const clickRayVariants: Variants = {\n normal: {\n opacity: 1,\n scale: 1,\n },\n animate: {\n opacity: [0, 1, 0, 1],\n scale: [0.6, 1.2, 1],\n transition: {\n duration: 0.6 * duration,\n ease: \"easeOut\",\n },\n },\n };\n\n return (\n <motion.div\n className={cn(\"inline-flex items-center justify-center\", className)}\n onMouseEnter={handleEnter}\n onMouseLeave={handleLeave}\n {...props}\n style={{ color, ...props.style }}\n >\n <motion.svg\n xmlns=\"http://www.w3.org/2000/svg\"\n width={size}\n height={size}\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke=\"currentColor\"\n strokeWidth=\"2\"\n strokeLinecap=\"round\"\n strokeLinejoin=\"round\"\n initial=\"normal\"\n animate={controls}\n >\n <motion.path\n d=\"M9 4V2\"\n variants={clickRayVariants}\n style={{ transformOrigin: \"center\" }}\n />\n <motion.path d=\"M5 5L3.5 3.5\" variants={clickRayVariants} />\n <motion.path d=\"M4 9H2\" variants={clickRayVariants} />\n <motion.path d=\"M5 13L3.5 14.5\" variants={clickRayVariants} />\n <motion.path d=\"M14.5 3.5L13 5\" variants={clickRayVariants} />\n\n <motion.path\n d=\"M12.669 8.35811L17.6969 10.3256C20.5969 11.4604 22.0469 12.0277 21.9988 12.9278C21.9508 13.8278 20.4375 14.2405 17.4111 15.0659C16.5099 15.3117 16.0593 15.4346 15.7469 15.7469C15.4346 16.0593 15.3117 16.5099 15.0659 17.4111C14.2405 20.4375 13.8278 21.9508 12.9278 21.9988C12.0277 22.0469 11.4604 20.5969 10.3256 17.6969L8.35811 12.669C7.17004 9.63279 6.57601 8.1147 7.34535 7.34535C8.1147 6.57601 9.63279 7.17004 12.669 8.35811Z\"\n variants={pointerVariants}\n style={{\n transformBox: \"fill-box\",\n transformOrigin: \"center\",\n }}\n />\n </motion.svg>\n </motion.div>\n );\n },\n);\n\nMousePointerClick01Icon.displayName = \"MousePointerClick01Icon\";\nexport { MousePointerClick01Icon };\n","\"use client\";\n\nimport { cn } from \"@/lib/utils\";\nimport type { HTMLMotionProps, Variants } from \"motion/react\";\nimport { motion, useAnimation, useReducedMotion } from \"motion/react\";\nimport { forwardRef, useCallback, useImperativeHandle, useRef } from \"react\";\n\nexport interface NewTwitterIconHandle {\n startAnimation: () => void;\n stopAnimation: () => void;\n}\n\ninterface NewTwitterIconProps extends HTMLMotionProps<\"div\"> {\n size?: number;\n duration?: number;\n isAnimated?: boolean;\n color?: string;\n}\n\nconst NewTwitterIcon = forwardRef<NewTwitterIconHandle, NewTwitterIconProps>(\n (\n {\n onMouseEnter,\n onMouseLeave,\n className,\n size = 24,\n duration = 1,\n isAnimated = true,\n color,\n ...props\n },\n ref,\n ) => {\n const controls = useAnimation();\n const reduced = useReducedMotion();\n const isControlled = useRef(false);\n\n useImperativeHandle(ref, () => {\n isControlled.current = true;\n return {\n startAnimation: () =>\n reduced ? controls.start(\"normal\") : controls.start(\"animate\"),\n stopAnimation: () => controls.start(\"normal\"),\n };\n });\n\n const handleEnter = useCallback(\n (e?: React.MouseEvent<HTMLDivElement>) => {\n if (!isAnimated || reduced) return;\n if (!isControlled.current) controls.start(\"animate\");\n else onMouseEnter?.(e as any);\n },\n [controls, reduced, isAnimated, onMouseEnter],\n );\n\n const handleLeave = useCallback(\n (e?: React.MouseEvent<HTMLDivElement>) => {\n if (!isControlled.current) controls.start(\"normal\");\n else onMouseLeave?.(e as any);\n },\n [controls, onMouseLeave],\n );\n\n const containerVariants: Variants = {\n normal: {\n scale: 1,\n rotate: 0,\n },\n animate: {\n scale: [1, 1.04, 1],\n rotate: [0, 2, -2, 0],\n transition: {\n duration: 0.6 * duration,\n ease: \"easeInOut\",\n },\n },\n };\n\n const pathVariants: Variants = {\n normal: {\n pathLength: 1,\n opacity: 1,\n },\n animate: {\n pathLength: [0, 1],\n opacity: [0.4, 1],\n transition: {\n duration: 0.8 * duration,\n ease: \"easeInOut\",\n },\n },\n };\n\n return (\n <motion.div\n className={cn(\"inline-flex items-center justify-center\", className)}\n onMouseEnter={handleEnter}\n onMouseLeave={handleLeave}\n {...props}\n style={{ color, ...props.style }}\n >\n <motion.svg\n xmlns=\"http://www.w3.org/2000/svg\"\n width={size}\n height={size}\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke=\"currentColor\"\n strokeWidth=\"2\"\n strokeLinecap=\"round\"\n strokeLinejoin=\"round\"\n initial=\"normal\"\n animate={controls}\n variants={containerVariants}\n >\n <motion.path\n d=\"M3 21L10.5484 13.4516M21 3L13.4516 10.5484M13.4516 10.5484L8 3H3L10.5484 13.4516M13.4516 10.5484L21 21H16L10.5484 13.4516\"\n variants={pathVariants}\n />\n </motion.svg>\n </motion.div>\n );\n },\n);\n\nNewTwitterIcon.displayName = \"NewTwitterIcon\";\nexport { NewTwitterIcon };\n","\"use client\";\n\nimport { cn } from \"@/lib/utils\";\nimport type { HTMLMotionProps, Variants } from \"motion/react\";\nimport { motion, useAnimation, useReducedMotion } from \"motion/react\";\nimport { forwardRef, useCallback, useImperativeHandle, useRef } from \"react\";\n\nexport interface NotificationIconHandle {\n startAnimation: () => void;\n stopAnimation: () => void;\n}\n\ninterface NotificationIconProps extends HTMLMotionProps<\"div\"> {\n size?: number;\n duration?: number;\n isAnimated?: boolean;\n color?: string;\n}\n\nconst NotificationIcon = forwardRef<\n NotificationIconHandle,\n NotificationIconProps\n>(\n (\n {\n onMouseEnter,\n onMouseLeave,\n className,\n size = 24,\n duration = 1,\n isAnimated = true,\n color,\n ...props\n },\n ref,\n ) => {\n const controls = useAnimation();\n const reduced = useReducedMotion();\n const isControlled = useRef(false);\n\n useImperativeHandle(ref, () => {\n isControlled.current = true;\n return {\n startAnimation: () =>\n reduced ? controls.start(\"normal\") : controls.start(\"animate\"),\n stopAnimation: () => controls.start(\"normal\"),\n };\n });\n\n const handleEnter = useCallback(\n (e?: React.MouseEvent<HTMLDivElement>) => {\n if (!isAnimated || reduced) return;\n if (!isControlled.current) controls.start(\"animate\");\n else onMouseEnter?.(e as any);\n },\n [controls, reduced, isAnimated, onMouseEnter],\n );\n\n const handleLeave = useCallback(\n (e: React.MouseEvent<HTMLDivElement>) => {\n if (!isControlled.current) controls.start(\"normal\");\n else onMouseLeave?.(e as any);\n },\n [controls, onMouseLeave],\n );\n\n const bellVariants: Variants = {\n normal: { rotate: 0 },\n animate: {\n rotate: [0, -18, 15, -10, 6, -3, 0],\n transition: {\n duration: 1.6 * duration,\n ease: \"easeInOut\",\n },\n },\n };\n\n const clapperVariants: Variants = {\n normal: { x: 0 },\n animate: {\n x: [0, -4, 4, -2, 2, 0],\n transition: {\n duration: 1.6 * duration,\n ease: \"easeInOut\",\n },\n },\n };\n\n return (\n <motion.div\n className={cn(\"relative inline-flex\", className)}\n onMouseEnter={handleEnter}\n onMouseLeave={handleLeave}\n {...props}\n style={{ color, ...props.style }}\n >\n <motion.svg\n xmlns=\"http://www.w3.org/2000/svg\"\n width={size}\n height={size}\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke=\"currentColor\"\n strokeWidth=\"2\"\n strokeLinecap=\"round\"\n strokeLinejoin=\"round\"\n animate={controls}\n initial=\"normal\"\n variants={bellVariants}\n >\n <motion.path\n d=\"M15.5 18C15.5 19.933 13.933 21.5 12 21.5C10.067 21.5 8.5 19.933 8.5 18\"\n variants={clapperVariants}\n />\n <path d=\"M19.2311 18H4.76887C3.79195 18 3 17.208 3 16.2311C3 15.762 3.18636 15.3121 3.51809 14.9803L4.12132 14.3771C4.68393 13.8145 5 13.0514 5 12.2558V9.5C5 5.63401 8.13401 2.5 12 2.5C15.866 2.5 19 5.634 19 9.5V12.2558C19 13.0514 19.3161 13.8145 19.8787 14.3771L20.4819 14.9803C20.8136 15.3121 21 15.762 21 16.2311C21 17.208 20.208 18 19.2311 18Z\" />\n </motion.svg>\n </motion.div>\n );\n },\n);\n\nNotificationIcon.displayName = \"NotificationIcon\";\nexport { NotificationIcon };\n","\"use client\";\n\nimport { cn } from \"@/lib/utils\";\nimport type { HTMLMotionProps, Variants } from \"motion/react\";\nimport { motion, useAnimation, useReducedMotion } from \"motion/react\";\nimport { forwardRef, useCallback, useImperativeHandle, useRef } from \"react\";\n\nexport interface NotificationOffIconHandle {\n startAnimation: () => void;\n stopAnimation: () => void;\n}\n\ninterface NotificationOffIconProps extends HTMLMotionProps<\"div\"> {\n size?: number;\n duration?: number;\n isAnimated?: boolean;\n color?: string;\n}\n\nconst NotificationOffIcon = forwardRef<\n NotificationOffIconHandle,\n NotificationOffIconProps\n>(\n (\n {\n onMouseEnter,\n onMouseLeave,\n className,\n size = 24,\n duration = 1,\n isAnimated = true,\n color,\n ...props\n },\n ref,\n ) => {\n const controls = useAnimation();\n const reduced = useReducedMotion();\n const isControlled = useRef(false);\n\n useImperativeHandle(ref, () => {\n isControlled.current = true;\n return {\n startAnimation: () =>\n reduced ? controls.start(\"normal\") : controls.start(\"animate\"),\n stopAnimation: () => controls.start(\"normal\"),\n };\n });\n\n const handleEnter = useCallback(\n (e?: React.MouseEvent<HTMLDivElement>) => {\n if (!isAnimated || reduced) return;\n if (!isControlled.current) controls.start(\"animate\");\n else onMouseEnter?.(e as any);\n },\n [controls, reduced, isAnimated, onMouseEnter],\n );\n\n const handleLeave = useCallback(\n (e: React.MouseEvent<HTMLDivElement>) => {\n if (!isControlled.current) controls.start(\"normal\");\n else onMouseLeave?.(e as any);\n },\n [controls, onMouseLeave],\n );\n\n const bellVariants: Variants = {\n normal: { rotate: 0 },\n animate: {\n rotate: [0, -10, 8, -5, 3, -1, 0],\n transition: {\n duration: 1.4 * duration,\n ease: \"easeInOut\",\n },\n },\n };\n\n const clapperVariants: Variants = {\n normal: { x: 0 },\n animate: {\n x: [0, -2, 2, -1, 1, 0],\n transition: {\n duration: 1.4 * duration,\n ease: \"easeInOut\",\n },\n },\n };\n\n return (\n <motion.div\n className={cn(\"relative inline-flex\", className)}\n onMouseEnter={handleEnter}\n onMouseLeave={handleLeave}\n {...props}\n style={{ color, ...props.style }}\n >\n <motion.svg\n xmlns=\"http://www.w3.org/2000/svg\"\n width={size}\n height={size}\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke=\"currentColor\"\n strokeWidth=\"2\"\n strokeLinecap=\"round\"\n strokeLinejoin=\"round\"\n animate={controls}\n initial=\"normal\"\n variants={bellVariants}\n style={{ originX: 0.5, originY: 0.15 }}\n >\n <motion.path\n d=\"M15.5 18C15.5 19.933 13.933 21.5 12 21.5C10.067 21.5 8.5 19.933 8.5 18\"\n variants={clapperVariants}\n />\n\n <path d=\"M2 2L22 22\" />\n\n <path d=\"M21 16.2311C21 15.762 20.8136 15.3121 20.4819 14.9803L19.8787 14.3771C19.3161 13.8145 19 13.0514 19 12.2558V9.5C19 5.634 15.866 2.5 12 2.5C10.4497 2.5 9.01706 3.00399 7.85707 3.85707M4.76887 18C3.79195 18 3 17.208 3 16.2311C3 15.762 3.18636 15.3121 3.51809 14.9803L4.12132 14.3771C4.68393 13.8145 5 13.0514 5 12.2558V9.5C5 8.20839 5.34981 6.99849 5.95987 5.95987L18 18H4.76887Z\" />\n </motion.svg>\n </motion.div>\n );\n },\n);\n\nNotificationOffIcon.displayName = \"NotificationOffIcon\";\nexport { NotificationOffIcon };\n","\"use client\";\n\nimport { cn } from \"@/lib/utils\";\nimport type { HTMLMotionProps, Variants } from \"motion/react\";\nimport { motion, useAnimation, useReducedMotion } from \"motion/react\";\nimport { forwardRef, useCallback, useImperativeHandle, useRef } from \"react\";\n\nexport interface SearchIconHandle {\n startAnimation: () => void;\n stopAnimation: () => void;\n}\n\ninterface SearchIconProps extends HTMLMotionProps<\"div\"> {\n size?: number;\n duration?: number;\n isAnimated?: boolean;\n color?: string;\n}\n\nconst SearchIcon = forwardRef<SearchIconHandle, SearchIconProps>(\n (\n {\n onMouseEnter,\n onMouseLeave,\n className,\n size = 24,\n duration = 1,\n isAnimated = true,\n color,\n ...props\n },\n ref,\n ) => {\n const controls = useAnimation();\n const reduced = useReducedMotion();\n const isControlled = useRef(false);\n\n useImperativeHandle(ref, () => {\n isControlled.current = true;\n return {\n startAnimation: () =>\n reduced ? controls.start(\"normal\") : controls.start(\"animate\"),\n stopAnimation: () => controls.start(\"normal\"),\n };\n });\n\n const handleEnter = useCallback(\n (e?: React.MouseEvent<HTMLDivElement>) => {\n if (!isAnimated || reduced) return;\n if (!isControlled.current) controls.start(\"animate\");\n else onMouseEnter?.(e as any);\n },\n [controls, reduced, isAnimated, onMouseEnter],\n );\n\n const handleLeave = useCallback(\n (e?: React.MouseEvent<HTMLDivElement>) => {\n if (!isControlled.current) controls.start(\"normal\");\n else onMouseLeave?.(e as any);\n },\n [controls, onMouseLeave],\n );\n\n const lensVariants: Variants = {\n normal: { x: 0, y: 0, rotate: 0, opacity: 1 },\n animate: {\n x: [0, 2, -2, 1, 0],\n y: [0, -1, 2, -1, 0],\n rotate: [0, 6, -6, 4, 0],\n transition: {\n duration: 1.2 * duration,\n ease: \"easeInOut\" as const,\n },\n },\n };\n\n return (\n <motion.div\n className={cn(\"inline-flex items-center justify-center\", className)}\n onMouseEnter={handleEnter}\n onMouseLeave={handleLeave}\n {...props}\n style={{ color, ...props.style }}\n >\n <motion.svg\n xmlns=\"http://www.w3.org/2000/svg\"\n width={size}\n height={size}\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke=\"currentColor\"\n strokeWidth=\"2\"\n strokeLinecap=\"round\"\n strokeLinejoin=\"round\"\n animate={controls}\n initial=\"normal\"\n >\n <motion.g variants={lensVariants}>\n <motion.circle cx=\"11\" cy=\"11\" r=\"8\" />\n <path d=\"M17 17L21 21\" />\n </motion.g>\n </motion.svg>\n </motion.div>\n );\n },\n);\n\nSearchIcon.displayName = \"SearchIcon\";\nexport { SearchIcon };\n","\"use client\";\n\nimport { cn } from \"@/lib/utils\";\nimport type { HTMLMotionProps, Variants } from \"motion/react\";\nimport { motion, useAnimation, useReducedMotion } from \"motion/react\";\nimport { forwardRef, useCallback, useImperativeHandle, useRef } from \"react\";\n\nexport interface Settings01IconHandle {\n startAnimation: () => void;\n stopAnimation: () => void;\n}\n\ninterface Settings01IconProps extends HTMLMotionProps<\"div\"> {\n size?: number;\n duration?: number;\n isAnimated?: boolean;\n color?: string;\n}\n\nconst Settings01Icon = forwardRef<Settings01IconHandle, Settings01IconProps>(\n (\n {\n onMouseEnter,\n onMouseLeave,\n className,\n size = 24,\n duration = 1,\n isAnimated = true,\n color,\n ...props\n },\n ref,\n ) => {\n const controls = useAnimation();\n const reduced = useReducedMotion();\n const isControlled = useRef(false);\n\n useImperativeHandle(ref, () => {\n isControlled.current = true;\n return {\n startAnimation: () =>\n reduced ? controls.start(\"normal\") : controls.start(\"animate\"),\n stopAnimation: () => controls.start(\"normal\"),\n };\n });\n\n const handleEnter = useCallback(\n (e?: React.MouseEvent<HTMLDivElement>) => {\n if (!isAnimated || reduced) return;\n if (!isControlled.current) controls.start(\"animate\");\n else onMouseEnter?.(e as any);\n },\n [controls, reduced, isAnimated, onMouseEnter],\n );\n\n const handleLeave = useCallback(\n (e?: React.MouseEvent<HTMLDivElement>) => {\n if (!isControlled.current) controls.start(\"normal\");\n else onMouseLeave?.(e as any);\n },\n [controls, onMouseLeave],\n );\n\n const gearVariants: Variants = {\n normal: {\n rotate: 0,\n scale: 1,\n },\n animate: {\n rotate: [0, 60],\n scale: [1, 1.05, 1],\n transition: {\n duration: 0.6 * duration,\n ease: \"easeInOut\",\n },\n },\n };\n\n const coreVariants: Variants = {\n normal: {\n rotate: 0,\n },\n animate: {\n rotate: [0, -90],\n transition: {\n duration: 0.6 * duration,\n ease: \"easeInOut\",\n },\n },\n };\n\n return (\n <motion.div\n className={cn(\"inline-flex items-center justify-center\", className)}\n onMouseEnter={handleEnter}\n onMouseLeave={handleLeave}\n {...props}\n style={{ color, ...props.style }}\n >\n <motion.svg\n xmlns=\"http://www.w3.org/2000/svg\"\n width={size}\n height={size}\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke=\"currentColor\"\n strokeWidth=\"2\"\n strokeLinecap=\"round\"\n strokeLinejoin=\"round\"\n initial=\"normal\"\n animate={controls}\n style={{ transformOrigin: \"center\" }}\n >\n <motion.g variants={gearVariants} style={{ transformOrigin: \"center\" }}>\n <path d=\"M21.011 14.0965C21.5329 13.9558 21.7939 13.8854 21.8969 13.7508C22 13.6163 22 13.3998 22 12.9669V11.0332C22 10.6003 22 10.3838 21.8969 10.2493C21.7938 10.1147 21.5329 10.0443 21.011 9.90358C19.0606 9.37759 17.8399 7.33851 18.3433 5.40087C18.4817 4.86799 18.5509 4.60156 18.4848 4.44529C18.4187 4.28902 18.2291 4.18134 17.8497 3.96596L16.125 2.98673C15.7528 2.77539 15.5667 2.66972 15.3997 2.69222C15.2326 2.71472 15.0442 2.90273 14.6672 3.27873C13.208 4.73448 10.7936 4.73442 9.33434 3.27864C8.95743 2.90263 8.76898 2.71463 8.60193 2.69212C8.43489 2.66962 8.24877 2.77529 7.87653 2.98663L6.15184 3.96587C5.77253 4.18123 5.58287 4.28891 5.51678 4.44515C5.45068 4.6014 5.51987 4.86787 5.65825 5.4008C6.16137 7.3385 4.93972 9.37763 2.98902 9.9036C2.46712 10.0443 2.20617 10.1147 2.10308 10.2492C2 10.3838 2 10.6003 2 11.0332V12.9669C2 13.3998 2 13.6163 2.10308 13.7508C2.20615 13.8854 2.46711 13.9558 2.98902 14.0965C4.9394 14.6225 6.16008 16.6616 5.65672 18.5992C5.51829 19.1321 5.44907 19.3985 5.51516 19.5548C5.58126 19.7111 5.77092 19.8188 6.15025 20.0341L7.87495 21.0134C8.24721 21.2247 8.43334 21.3304 8.6004 21.3079C8.76746 21.2854 8.95588 21.0973 9.33271 20.7213C10.7927 19.2644 13.2088 19.2643 14.6689 20.7212C15.0457 21.0973 15.2341 21.2853 15.4012 21.3078C15.5682 21.3303 15.7544 21.2246 16.1266 21.0133L17.8513 20.034C18.2307 19.8187 18.4204 19.711 18.4864 19.5547C18.5525 19.3984 18.4833 19.132 18.3448 18.5991C17.8412 16.6616 19.0609 14.6226 21.011 14.0965Z\" />\n </motion.g>\n\n <motion.g variants={coreVariants} style={{ transformOrigin: \"center\" }}>\n <path d=\"M15.5 12C15.5 13.933 13.933 15.5 12 15.5C10.067 15.5 8.5 13.933 8.5 12C8.5 10.067 10.067 8.5 12 8.5C13.933 8.5 15.5 10.067 15.5 12Z\" />\n </motion.g>\n </motion.svg>\n </motion.div>\n );\n },\n);\n\nSettings01Icon.displayName = \"Settings01Icon\";\nexport { Settings01Icon };\n","\"use client\";\n\nimport { cn } from \"@/lib/utils\";\nimport type { HTMLMotionProps, Variants } from \"motion/react\";\nimport { motion, useAnimation, useReducedMotion } from \"motion/react\";\nimport { forwardRef, useCallback, useImperativeHandle, useRef } from \"react\";\n\nexport interface Settings02IconHandle {\n startAnimation: () => void;\n stopAnimation: () => void;\n}\n\ninterface Settings02IconProps extends HTMLMotionProps<\"div\"> {\n size?: number;\n duration?: number;\n isAnimated?: boolean;\n color?: string;\n}\n\nconst Settings02Icon = forwardRef<Settings02IconHandle, Settings02IconProps>(\n (\n {\n onMouseEnter,\n onMouseLeave,\n className,\n size = 24,\n duration = 1,\n isAnimated = true,\n color,\n ...props\n },\n ref,\n ) => {\n const controls = useAnimation();\n const reduced = useReducedMotion();\n const isControlled = useRef(false);\n\n useImperativeHandle(ref, () => {\n isControlled.current = true;\n return {\n startAnimation: () =>\n reduced ? controls.start(\"normal\") : controls.start(\"animate\"),\n stopAnimation: () => controls.start(\"normal\"),\n };\n });\n\n const handleEnter = useCallback(\n (e?: React.MouseEvent<HTMLDivElement>) => {\n if (!isAnimated || reduced) return;\n if (!isControlled.current) controls.start(\"animate\");\n else onMouseEnter?.(e as any);\n },\n [controls, reduced, isAnimated, onMouseEnter],\n );\n\n const handleLeave = useCallback(\n (e?: React.MouseEvent<HTMLDivElement>) => {\n if (!isControlled.current) controls.start(\"normal\");\n else onMouseLeave?.(e as any);\n },\n [controls, onMouseLeave],\n );\n\n const containerVariants: Variants = {\n normal: {\n scale: 1,\n rotate: 0,\n },\n animate: {\n scale: [1, 1.04, 0.98, 1],\n rotate: [0, -2, 2, 0],\n transition: {\n duration: 0.7 * duration,\n ease: \"easeInOut\",\n },\n },\n };\n\n const outerVariants: Variants = {\n normal: {\n rotate: 0,\n },\n animate: {\n rotate: [0, 18, 32, 28, 30],\n transition: {\n duration: 0.7 * duration,\n ease: \"easeOut\",\n },\n },\n };\n\n const innerVariants: Variants = {\n normal: {\n scale: 1,\n },\n animate: {\n scale: [1, 0.85, 1.08, 1],\n transition: {\n duration: 0.55 * duration,\n ease: \"easeOut\",\n delay: 0.08,\n },\n },\n };\n\n return (\n <motion.div\n className={cn(\"inline-flex items-center justify-center\", className)}\n onMouseEnter={handleEnter}\n onMouseLeave={handleLeave}\n {...props}\n style={{ color, ...props.style }}\n >\n <motion.svg\n xmlns=\"http://www.w3.org/2000/svg\"\n width={size}\n height={size}\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke=\"currentColor\"\n strokeWidth=\"2\"\n initial=\"normal\"\n animate={controls}\n variants={containerVariants}\n style={{ transformOrigin: \"center\" }}\n >\n <motion.g variants={outerVariants} style={{ transformOrigin: \"center\" }}>\n <path d=\"M20.7906 9.15201C21.5969 10.5418 22 11.2366 22 12C22 12.7634 21.5969 13.4582 20.7906 14.848L18.8669 18.1638C18.0638 19.548 17.6623 20.2402 17.0019 20.6201C16.3416 21 15.5402 21 13.9373 21L10.0627 21C8.45982 21 7.6584 21 6.99807 20.6201C6.33774 20.2402 5.93619 19.548 5.13311 18.1638L3.20942 14.848C2.40314 13.4582 2 12.7634 2 12C2 11.2366 2.40314 10.5418 3.20942 9.152L5.13311 5.83621C5.93619 4.45196 6.33774 3.75984 6.99807 3.37992C7.6584 3 8.45982 3 10.0627 3L13.9373 3C15.5402 3 16.3416 3 17.0019 3.37992C17.6623 3.75984 18.0638 4.45197 18.8669 5.83622L20.7906 9.15201Z\" />\n </motion.g>\n\n <motion.g variants={innerVariants} style={{ transformOrigin: \"center\" }}>\n <path d=\"M15.5 12C15.5 13.933 13.933 15.5 12 15.5C10.067 15.5 8.5 13.933 8.5 12C8.5 10.067 10.067 8.5 12 8.5C13.933 8.5 15.5 10.067 15.5 12Z\" />\n </motion.g>\n </motion.svg>\n </motion.div>\n );\n },\n);\n\nSettings02Icon.displayName = \"Settings02Icon\";\nexport { Settings02Icon };\n","\"use client\";\n\nimport { cn } from \"@/lib/utils\";\nimport type { HTMLMotionProps, Variants } from \"motion/react\";\nimport { motion, useAnimation, useReducedMotion } from \"motion/react\";\nimport { forwardRef, useCallback, useImperativeHandle, useRef } from \"react\";\n\nexport interface TwitterIconHandle {\n startAnimation: () => void;\n stopAnimation: () => void;\n}\n\ninterface TwitterIconProps extends HTMLMotionProps<\"div\"> {\n size?: number;\n duration?: number;\n isAnimated?: boolean;\n color?: string;\n}\n\nconst TwitterIcon = forwardRef<TwitterIconHandle, TwitterIconProps>(\n (\n {\n onMouseEnter,\n onMouseLeave,\n className,\n size = 24,\n duration = 1,\n isAnimated = true,\n color,\n ...props\n },\n ref,\n ) => {\n const controls = useAnimation();\n const reduced = useReducedMotion();\n const isControlled = useRef(false);\n\n useImperativeHandle(ref, () => {\n isControlled.current = true;\n return {\n startAnimation: () =>\n reduced ? controls.start(\"normal\") : controls.start(\"animate\"),\n stopAnimation: () => controls.start(\"normal\"),\n };\n });\n\n const handleEnter = useCallback(\n (e?: React.MouseEvent<HTMLDivElement>) => {\n if (!isAnimated || reduced) return;\n if (!isControlled.current) controls.start(\"animate\");\n else onMouseEnter?.(e as any);\n },\n [controls, reduced, isAnimated, onMouseEnter],\n );\n\n const handleLeave = useCallback(\n (e?: React.MouseEvent<HTMLDivElement>) => {\n if (!isControlled.current) controls.start(\"normal\");\n else onMouseLeave?.(e as any);\n },\n [controls, onMouseLeave],\n );\n\n const containerVariants: Variants = {\n normal: {\n scale: 1,\n y: 0,\n },\n animate: {\n scale: [1, 1.06, 1],\n y: [0, -2, 0],\n transition: {\n duration: 0.6 * duration,\n ease: \"easeInOut\",\n },\n },\n };\n\n const pathVariants: Variants = {\n normal: {\n pathLength: 1,\n opacity: 1,\n },\n animate: {\n pathLength: [0.3, 1],\n opacity: [0.5, 1],\n transition: {\n duration: 0.8 * duration,\n ease: \"easeInOut\",\n },\n },\n };\n\n return (\n <motion.div\n className={cn(\"inline-flex items-center justify-center\", className)}\n onMouseEnter={handleEnter}\n onMouseLeave={handleLeave}\n {...props}\n style={{ color, ...props.style }}\n >\n <motion.svg\n xmlns=\"http://www.w3.org/2000/svg\"\n width={size}\n height={size}\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke=\"currentColor\"\n strokeWidth=\"2\"\n strokeLinejoin=\"round\"\n initial=\"normal\"\n animate={controls}\n variants={containerVariants}\n >\n <motion.path\n d=\"M2 18.5C3.76504 19.521 5.81428 20 8 20C14.4808 20 19.7617 14.8625 19.9922 8.43797L22 4.5L18.6458 5C17.9407 4.37764 17.0144 4 16 4C13.4276 4 11.5007 6.51734 12.1209 8.98003C8.56784 9.20927 5.34867 7.0213 3.48693 4.10523C2.25147 8.30185 3.39629 13.3561 6.5 16.4705C6.5 17.647 3.5 18.3488 2 18.5Z\"\n variants={pathVariants}\n />\n </motion.svg>\n </motion.div>\n );\n },\n);\n\nTwitterIcon.displayName = \"TwitterIcon\";\nexport { TwitterIcon };\n"]}
|
package/dist/index.cjs
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":[],"names":[],"mappings":"","file":"index.cjs"}
|
package/dist/index.d.cts
ADDED
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Canonical handle exposed by every @animateicons/react icon's
|
|
3
|
+
* `forwardRef`. Each icon also re-exports its own named alias
|
|
4
|
+
* (e.g. `BellRingIconHandle`) for ergonomic typing at the call site.
|
|
5
|
+
*/
|
|
6
|
+
type IconHandle = {
|
|
7
|
+
startAnimation: () => void;
|
|
8
|
+
stopAnimation: () => void;
|
|
9
|
+
};
|
|
10
|
+
|
|
11
|
+
export type { IconHandle };
|
package/dist/index.d.ts
ADDED
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Canonical handle exposed by every @animateicons/react icon's
|
|
3
|
+
* `forwardRef`. Each icon also re-exports its own named alias
|
|
4
|
+
* (e.g. `BellRingIconHandle`) for ergonomic typing at the call site.
|
|
5
|
+
*/
|
|
6
|
+
type IconHandle = {
|
|
7
|
+
startAnimation: () => void;
|
|
8
|
+
stopAnimation: () => void;
|
|
9
|
+
};
|
|
10
|
+
|
|
11
|
+
export type { IconHandle };
|
package/dist/index.js
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":[],"names":[],"mappings":"","file":"index.js"}
|