Programmer-RD-AI
feat: add Paragraph component and types for typography
a8aec61
'use client'
import type React from 'react'
import { motion, AnimatePresence } from 'framer-motion'
import { useStickToBottomContext } from 'use-stick-to-bottom'
import { Button } from '@/components/ui/button'
import Icon from '@/components/ui/icon'
const ScrollToBottom: React.FC = () => {
const { isAtBottom, scrollToBottom } = useStickToBottomContext()
return (
<AnimatePresence>
{!isAtBottom && (
<motion.div
initial={{ opacity: 0, y: 20 }}
animate={{ opacity: 1, y: 0 }}
exit={{ opacity: 0, y: 20 }}
transition={{ duration: 0.3, ease: 'easeInOut' }}
className="absolute bottom-4 left-1/2 -translate-x-1/2"
>
<Button
onClick={() => scrollToBottom()}
type="button"
size="icon"
variant="secondary"
className="border border-border bg-background text-primary shadow-md transition-shadow duration-300 hover:bg-background-secondary"
>
<Icon type="arrow-down" size="xs" />
</Button>
</motion.div>
)}
</AnimatePresence>
)
}
export default ScrollToBottom