import { Button } from '@/components/ui/button'; import { Bookmark, BookmarkCheck } from 'lucide-react'; import { cn } from '@/lib/utils'; interface BookmarkButtonProps { isBookmarked: boolean; loading?: boolean; onClick: (e?: React.MouseEvent) => void; size?: 'sm' | 'lg'; variant?: 'default' | 'ghost' | 'outline'; className?: string; showText?: boolean; } export function BookmarkButton({ isBookmarked, loading = false, onClick, size = 'sm', variant = 'ghost', className, showText = false, }: BookmarkButtonProps) { const sizeClasses = { sm: 'h-8 w-10', lg: 'h-10 whitespace-nowrap px-4', }; const iconSize = { sm: 14, lg: 18, }; return ( ); } interface BookmarkIndicatorProps { isBookmarked: boolean; className?: string; } export function BookmarkIndicator({ isBookmarked, className, }: BookmarkIndicatorProps) { if (!isBookmarked) return null; return (