You can not select more than 25 topics
			Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
		
		
		
		
		
			
		
			
				
					
					
						
							27 lines
						
					
					
						
							823 B
						
					
					
				
			
		
		
	
	
							27 lines
						
					
					
						
							823 B
						
					
					
				| import Link from 'next/link';
 | |
| 
 | |
| import { cn } from '@/lib/utils';
 | |
| 
 | |
| type ButtonProps = {
 | |
|   href: string;
 | |
|   label: string;
 | |
|   className?: string;
 | |
|   icon?: React.ReactNode;
 | |
| };
 | |
| 
 | |
| export function Button({ href, label, className, icon }: ButtonProps) {
 | |
|   return (
 | |
|     <Link href={href} className={className}>
 | |
|       <button
 | |
|         className={cn(
 | |
|           'flex flex-row items-center space-x-2 rounded p-2 font-semibold shadow-xl hover:outline',
 | |
|           'bg-slate-700 text-slate-200 hover:bg-transparent hover:text-slate-700 hover:outline-slate-700',
 | |
|           'dark:bg-rose-50 dark:text-slate-800 dark:hover:bg-transparent dark:hover:text-rose-50 dark:hover:outline-rose-50',
 | |
|         )}
 | |
|       >
 | |
|         {icon && <span aria-hidden>{icon}</span>}
 | |
|         <span className="text-sm">{label}</span>
 | |
|       </button>
 | |
|     </Link>
 | |
|   );
 | |
| }
 | |
| 
 |