{
  "$schema": "https://ui.shadcn.com/schema/registry-item.json",
  "name": "shimmer-text",
  "type": "registry:component",
  "title": "Shimmer Text",
  "description": "Heading with a looping shimmer sweep (KokonutUI, MIT). The sweep runs --foreground -> --muted-foreground -> --foreground so it theme-tracks.",
  "dependencies": [
    "framer-motion"
  ],
  "registryDependencies": [
    "https://design.subconscious.ai/r/utils.json"
  ],
  "files": [
    {
      "path": "registry/components/shimmer-text.tsx",
      "type": "registry:component",
      "content": "\"use client\";\n\n/**\n * @author: @dorianbaffier\n * @description: Shimmer Text\n * @version: 1.0.0\n * @date: 2025-06-26\n * @license: MIT\n * @website: https://kokonutui.com\n * @github: https://github.com/kokonut-labs/kokonutui\n *\n * Bridged to the Subconscious design contract. Headless root <span> — no\n * layout/typography opinions. The shimmer sweep runs `var(--color)` →\n * faded → `var(--color)` so it tracks light/dark from one gradient.\n */\n\nimport { motion } from \"framer-motion\";\nimport { cn } from \"@/registry/lib/utils\";\n\ninterface ShimmerTextProps\n  extends Omit<React.HTMLAttributes<HTMLSpanElement>, \"children\"> {\n  text: string;\n}\n\nexport default function ShimmerText({\n  text = \"Text Shimmer\",\n  className,\n  style,\n  ...rest\n}: ShimmerTextProps) {\n  const ink = \"var(--color)\";\n  const fade = \"color-mix(in srgb, var(--color) 40%, transparent)\";\n  return (\n    <motion.span\n      animate={{\n        backgroundPosition: [\"200% center\", \"-200% center\"],\n      }}\n      className={cn(\"inline-block bg-clip-text text-transparent\", className)}\n      style={{\n        backgroundImage: `linear-gradient(to right, ${ink}, ${fade}, ${ink})`,\n        backgroundSize: \"200% 100%\",\n        ...style,\n      }}\n      transition={{\n        duration: 2.5,\n        ease: \"linear\",\n        repeat: Number.POSITIVE_INFINITY,\n      }}\n      {...rest}\n    >\n      {text}\n    </motion.span>\n  );\n}\n"
    }
  ]
}
