|
1 | 1 | import { cva } from 'class-variance-authority'; |
2 | 2 |
|
| 3 | +const hoverBounce = 'hover:-translate-y-1 transition duration-200'; |
| 4 | +const outlineCommon = 'border bg-transparent border-2 text-white shadow-xs hover:bg-grey-700/40'; |
3 | 5 | export const buttonVariants = cva( |
4 | 6 | `inline-flex |
5 | 7 | items-center |
@@ -29,17 +31,17 @@ export const buttonVariants = cva( |
29 | 31 | submit: |
30 | 32 | 'bg-gradient-to-r from-blue-100 from-0% to-blue to-100% hover:bg-gradient-to-r hover:from-blue text-primary-foreground shadow-sm', |
31 | 33 | destructive: 'bg-destructive text-destructive-foreground shadow-xs hover:bg-destructive/90', |
32 | | - outline: 'border border-input bg-background shadow-xs hover:bg-accent hover:text-accent-foreground', |
33 | 34 | secondary: 'bg-secondary text-secondary-foreground shadow-xs hover:bg-secondary/80', |
34 | 35 | ghost: 'hover:bg-accent hover:text-muted-foreground', |
35 | 36 | link: 'text-primary underline-offset-4 hover:underline', |
36 | 37 | positive: 'bg-green text-white shadow-xs hover:bg-green/90', |
| 38 | + outline: `${outlineCommon} ${hoverBounce}`, |
37 | 39 | positiveOutline: |
38 | | - 'border bg-transparent border-green border-2 text-white shadow-xs hover:-translate-y-1 transition duration-200 hover:bg-grey-700/40', |
| 40 | + `${outlineCommon} ${hoverBounce} border-green`, |
39 | 41 | destructiveOutline: |
40 | | - 'border bg-transparent border-destructive border-2 text-white shadow-xs hover:-translate-y-1 transition duration-200 hover:bg-grey-700/40', |
| 42 | + `${outlineCommon} ${hoverBounce} border-destructive`, |
41 | 43 | defaultOutline: |
42 | | - 'border bg-transparent border-primary border-2 text-white shadow-xs hover:-translate-y-1 transition duration-200 hover:bg-grey-700/40', |
| 44 | + `${outlineCommon} ${hoverBounce} border-primary`, |
43 | 45 | }, |
44 | 46 | size: { |
45 | 47 | default: 'h-9 px-4 py-2 has-[>svg]:px-3', |
|
0 commit comments