{ "name": "ban", "type": "registry:ui", "registryDependencies": [], "dependencies": [ "motion" ], "devDependencies": [], "tailwind": {}, "cssVars": { "light": {}, "dark": {} }, "files": [ { "path": "ban.tsx", "content": "'use client';\n\nimport type { Variants } from 'motion/react';\nimport { motion, useAnimation } from 'motion/react';\n\nconst circleVariants: Variants = {\n normal: {\n opacity: 1,\n pathLength: 1,\n transition: {\n duration: 0.3,\n opacity: { duration: 0.1 },\n },\n },\n animate: {\n opacity: [0, 1],\n pathLength: [0, 1],\n transition: {\n duration: 0.4,\n opacity: { duration: 0.1 },\n },\n },\n};\n\nconst lineVariants: Variants = {\n normal: {\n opacity: 1,\n pathLength: 1,\n transition: {\n duration: 0.3,\n opacity: { duration: 0.1 },\n },\n },\n slash: () => ({\n opacity: [0, 1],\n pathLength: [0, 1],\n transition: {\n duration: 0.4,\n opacity: { duration: 0.1 },\n },\n }),\n};\n\nconst BanIcon = () => {\n const controls = useAnimation();\n\n return (\n

{\n controls.start('animate');\n controls.start('slash', { delay: 0.5 });\n }}\n onMouseLeave={() => controls.start('normal')}\n >\n \n \n \n \n
\n );\n};\n\nexport { BanIcon };\n", "type": "registry:ui" } ] }