{ "name": "scroll-button", "type": "registry:ui", "registryDependencies": [ "button" ], "dependencies": [ "class-variance-authority", "lucide-react" ], "devDependencies": [], "tailwind": {}, "cssVars": { "light": {}, "dark": {} }, "description": "A floating button component that appears when users scroll up in a container, allowing them to quickly return to the bottom of the content", "files": [ { "path": "scroll-button.tsx", "content": "\"use client\"\n\nimport { Button, buttonVariants } from \"@/components/ui/button\"\nimport { cn } from \"@/lib/utils\"\nimport { type VariantProps } from \"class-variance-authority\"\nimport { ChevronDown } from \"lucide-react\"\nimport { useStickToBottomContext } from \"use-stick-to-bottom\"\n\nexport type ScrollButtonProps = {\n className?: string\n variant?: VariantProps[\"variant\"]\n size?: VariantProps[\"size\"]\n} & React.ButtonHTMLAttributes\n\nfunction ScrollButton({\n className,\n variant = \"outline\",\n size = \"sm\",\n ...props\n}: ScrollButtonProps) {\n const { isAtBottom, scrollToBottom } = useStickToBottomContext()\n\n return (\n scrollToBottom()}\n {...props}\n >\n \n \n )\n}\n\nexport { ScrollButton }\n", "type": "registry:ui" } ] }