27 lines
		
	
	
		
			1011 B
		
	
	
	
		
			Plaintext
		
	
	
	
	
	
			
		
		
	
	
			27 lines
		
	
	
		
			1011 B
		
	
	
	
		
			Plaintext
		
	
	
	
	
	
| ---
 | |
| const { title, url } = Astro.props;
 | |
| 
 | |
| interface Props {
 | |
|   title?: string;
 | |
|   url?: string;
 | |
| }
 | |
| 
 | |
| const baseClasses =
 | |
|   'inline-flex items-center justify-center gap-x-2 rounded-lg px-4 py-3 text-center text-sm font-medium text-neutral-600 shadow-sm outline-none ring-neutral-500 focus-visible:ring transition duration-300';
 | |
| const borderClasses = 'border border-neutral-200';
 | |
| const bgColorClasses = 'bg-neutral-300';
 | |
| const hoverClasses = 'hover:bg-neutral-400/50 hover:text-neutral-600 active:text-neutral-700';
 | |
| const disableClasses = 'disabled:pointer-events-none disabled:opacity-50';
 | |
| const fontSizeClasses = '2xl:text-base';
 | |
| const ringClasses = 'ring-neutral-500';
 | |
| const darkClasses =
 | |
|   'dark:border-neutral-700 dark:bg-neutral-700 dark:text-neutral-300 dark:ring-neutral-200 dark:hover:bg-neutral-600 dark:focus:outline-none';
 | |
| ---
 | |
| 
 | |
| <a
 | |
|   class={`${baseClasses} ${borderClasses} ${bgColorClasses} ${hoverClasses} ${disableClasses} ${fontSizeClasses} ${ringClasses} ${darkClasses}`}
 | |
|   href={url}
 | |
| >
 | |
|   {title}
 | |
| </a>
 |