{
  "$schema": "https://ui.shadcn.com/schema/registry-item.json",
  "name": "bounce-smiley-animation",
  "description": "Bounce Smiley Animation component.",
  "dependencies": [
    "motion"
  ],
  "files": [
    {
      "path": "registry/new-york/svg/bounce-smiley-animation.tsx",
      "content": "\"use client\";\n\nimport { motion } from \"motion/react\";\n\nexport function BounceSmileyAnimation() {\n  return (\n    <svg\n      className=\"w-full h-full\"\n      viewBox=\"0 0 280 613\"\n      xmlns=\"http://www.w3.org/2000/svg\"\n    >\n      <motion.g\n        style={{ transformBox: \"view-box\", transformOrigin: \"113px 113px\" }}\n        initial={{ x: 20.182, y: 671.07 }}\n        animate={{ x: [20.182, 24.661], y: [671.07, 109.888] }}\n        transition={{\n          x: {\n            type: \"spring\",\n            stiffness: 16.5234375,\n            damping: 4.1015625,\n            mass: 1,\n            repeat: Infinity,\n            repeatType: \"loop\",\n            repeatDelay: 1.567,\n          },\n          y: {\n            type: \"spring\",\n            stiffness: 16.5234375,\n            damping: 4.1015625,\n            mass: 1,\n            repeat: Infinity,\n            repeatType: \"loop\",\n            repeatDelay: 1.65,\n          },\n        }}\n      >\n        <svg\n          x={0}\n          y={0}\n          width={226}\n          height={226}\n          viewBox=\"0 0 226 226\"\n          overflow=\"visible\"\n        >\n          <g xmlns=\"http://www.w3.org/2000/svg\" fill=\"none\">\n            <motion.g\n              initial={{ rotate: 0 }}\n              animate={{ rotate: [0, 226.382, 84.284, 100.226] }}\n              transition={{\n                rotate: {\n                  duration: 5,\n                  times: [0, 0.5915, 0.902, 1],\n                  ease: [\n                    [0.42, 0, 0.58, 1],\n                    [0.42, 0, 0.58, 1],\n                    [0.42, 0, 0.58, 1],\n                  ],\n                  repeat: Infinity,\n                  repeatType: \"loop\",\n                },\n              }}\n              xmlns=\"http://www.w3.org/2000/svg\"\n              filter=\"url(#filter0_i_bounce_smiley)\"\n              style={{ transformBox: \"view-box\", transformOrigin: \"113px 113px\" }}\n            >\n              <path\n                d=\"M91.4595 26.5015C102.568 12.8345 123.432 12.8345 134.54 26.5015C140.447 33.7678 149.618 37.5668 158.932 36.6049C176.451 34.7958 191.204 49.5488 189.395 67.0678C188.433 76.382 192.232 85.5535 199.498 91.4595C213.165 102.568 213.165 123.432 199.498 134.54C192.232 140.447 188.433 149.618 189.395 158.932C191.204 176.451 176.451 191.204 158.932 189.395C149.618 188.433 140.447 192.232 134.54 199.498C123.432 213.165 102.568 213.165 91.4595 199.498C85.5535 192.232 76.382 188.433 67.0678 189.395C49.5488 191.204 34.7958 176.451 36.6049 158.932C37.5668 149.618 33.7678 140.447 26.5015 134.54C12.8345 123.432 12.8345 102.568 26.5015 91.4595C33.7678 85.5535 37.5668 76.382 36.6049 67.0678C34.7958 49.5488 49.5488 34.7958 67.0678 36.6049C76.382 37.5668 85.5535 33.7678 91.4595 26.5015Z\"\n                fill=\"#50B9FF\"\n              />\n              <path\n                d=\"M91.4595 26.5015C102.568 12.8345 123.432 12.8345 134.54 26.5015C140.447 33.7678 149.618 37.5668 158.932 36.6049C176.451 34.7958 191.204 49.5488 189.395 67.0678C188.433 76.382 192.232 85.5535 199.498 91.4595C213.165 102.568 213.165 123.432 199.498 134.54C192.232 140.447 188.433 149.618 189.395 158.932C191.204 176.451 176.451 191.204 158.932 189.395C149.618 188.433 140.447 192.232 134.54 199.498C123.432 213.165 102.568 213.165 91.4595 199.498C85.5535 192.232 76.382 188.433 67.0678 189.395C49.5488 191.204 34.7958 176.451 36.6049 158.932C37.5668 149.618 33.7678 140.447 26.5015 134.54C12.8345 123.432 12.8345 102.568 26.5015 91.4595C33.7678 85.5535 37.5668 76.382 36.6049 67.0678C34.7958 49.5488 49.5488 34.7958 67.0678 36.6049C76.382 37.5668 85.5535 33.7678 91.4595 26.5015Z\"\n                fill=\"url(#paint0_radial_bounce_smiley)\"\n              />\n            </motion.g>\n            <circle\n              xmlns=\"http://www.w3.org/2000/svg\"\n              cx=\"80.5\"\n              cy=\"112.5\"\n              r=\"7.5\"\n              fill=\"#00558E\"\n            />\n            <motion.path\n              initial={{\n                d: \"M 123 112.5 C 123 116.642 126.358 120 130.5 120 C 134.642 120 138 116.642 138 112.5 C 138 108.358 134.589 104.915 130.447 104.915 C 126.305 104.915 123 108.358 123 112.5 Z\",\n              }}\n              animate={{\n                d: [\n                  \"M 123 112.5 C 123 116.642 126.358 120 130.5 120 C 134.642 120 138 116.642 138 112.5 C 138 108.358 134.589 104.915 130.447 104.915 C 126.305 104.915 123 108.358 123 112.5 Z\",\n                  \"M 123 112.5 C 123 116.642 126.358 120 130.5 120 C 134.642 120 138 116.642 138 112.5 C 138 108.358 134.85 117.69 130.708 117.69 C 126.565 117.69 123 108.358 123 112.5 Z\",\n                  \"M 123 112.5 C 123 116.642 126.358 120 130.5 120 C 134.642 120 138 116.642 138 112.5 C 138 108.358 134.669 104.836 130.527 104.836 C 126.385 104.836 123 108.358 123 112.5 Z\",\n                ],\n              }}\n              transition={{\n                d: {\n                  duration: 5,\n                  times: [0.5308, 0.5915, 0.6484],\n                  ease: [\n                    [0.42, 0, 0.58, 1],\n                    [0.42, 0, 0.58, 1],\n                  ],\n                  repeat: Infinity,\n                  repeatType: \"loop\",\n                },\n              }}\n              xmlns=\"http://www.w3.org/2000/svg\"\n              fill=\"#00558E\"\n              style={{ transformBox: \"view-box\", transformOrigin: \"130.5px 112.5px\" }}\n            />\n            <path\n              xmlns=\"http://www.w3.org/2000/svg\"\n              d=\"M90 127C97.2727 139 112.727 139 120 127\"\n              stroke=\"#057BC9\"\n              strokeWidth=\"8\"\n              strokeLinecap=\"round\"\n            />\n            <defs xmlns=\"http://www.w3.org/2000/svg\">\n              <filter\n                id=\"filter0_i_bounce_smiley\"\n                x=\"16.251\"\n                y=\"16.2512\"\n                width=\"193.498\"\n                height=\"193.498\"\n                filterUnits=\"userSpaceOnUse\"\n                colorInterpolationFilters=\"sRGB\"\n              >\n                <feFlood floodOpacity=\"0\" result=\"BackgroundImageFix\" />\n                <feBlend\n                  mode=\"normal\"\n                  in=\"SourceGraphic\"\n                  in2=\"BackgroundImageFix\"\n                  result=\"shape\"\n                />\n                <feColorMatrix\n                  in=\"SourceAlpha\"\n                  type=\"matrix\"\n                  values=\"0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 127 0\"\n                  result=\"hardAlpha\"\n                />\n                <feOffset />\n                <feGaussianBlur stdDeviation=\"15.65\" />\n                <feComposite\n                  in2=\"hardAlpha\"\n                  operator=\"arithmetic\"\n                  k2=\"-1\"\n                  k3=\"1\"\n                />\n                <feColorMatrix\n                  type=\"matrix\"\n                  values=\"0 0 0 0 1 0 0 0 0 1 0 0 0 0 1 0 0 0 0.25 0\"\n                />\n                <feBlend\n                  mode=\"normal\"\n                  in2=\"shape\"\n                  result=\"effect1_innerShadow_bounce_smiley\"\n                />\n              </filter>\n              <radialGradient\n                id=\"paint0_radial_bounce_smiley\"\n                cx=\"0\"\n                cy=\"0\"\n                r=\"1\"\n                gradientUnits=\"userSpaceOnUse\"\n                gradientTransform=\"translate(113 113) rotate(90) scale(227)\"\n              >\n                <stop stopColor=\"#28A9FF\" />\n                <stop offset=\"1\" stopColor=\"white\" stopOpacity=\"0\" />\n              </radialGradient>\n            </defs>\n          </g>\n        </svg>\n      </motion.g>\n    </svg>\n  );\n}\n\nexport default BounceSmileyAnimation;\n",
      "type": "registry:component",
      "target": "components/pixel-perfect/bounce-smiley-animation.tsx"
    }
  ],
  "type": "registry:block"
}