|
1 |
| -interface IntegrationCardProps { |
| 1 | +type IntegrationCardProps = { |
2 | 2 | href: string;
|
3 | 3 | icon: React.ReactNode;
|
4 | 4 | title: string;
|
5 | 5 | description: string;
|
6 |
| - colorScheme?: 'blue' | 'green' | 'purple'; |
7 |
| -} |
| 6 | + colorScheme?: "blue" | "green" | "purple"; |
| 7 | +}; |
8 | 8 |
|
9 |
| -export const IntegrationCard = ({ |
10 |
| - href, |
11 |
| - icon, |
12 |
| - title, |
13 |
| - description, |
14 |
| - colorScheme = 'blue' |
| 9 | +export const IntegrationCard = ({ |
| 10 | + href, |
| 11 | + icon, |
| 12 | + title, |
| 13 | + description, |
| 14 | + colorScheme = "blue", |
15 | 15 | }: IntegrationCardProps) => {
|
16 | 16 | const colorClasses = {
|
17 | 17 | blue: {
|
18 |
| - bg: 'bg-blue-100 dark:bg-blue-900', |
19 |
| - text: 'text-blue-600 dark:text-blue-400', |
20 |
| - hoverText: 'group-hover:text-blue-600 dark:group-hover:text-blue-400' |
| 18 | + bg: "bg-blue-100 dark:bg-blue-900", |
| 19 | + text: "text-blue-600 dark:text-blue-400", |
| 20 | + hoverText: "group-hover:text-blue-600 dark:group-hover:text-blue-400", |
21 | 21 | },
|
22 | 22 | green: {
|
23 |
| - bg: 'bg-green-100 dark:bg-green-900', |
24 |
| - text: 'text-green-600 dark:text-green-400', |
25 |
| - hoverText: 'group-hover:text-green-600 dark:group-hover:text-green-400' |
| 23 | + bg: "bg-green-100 dark:bg-green-900", |
| 24 | + text: "text-green-600 dark:text-green-400", |
| 25 | + hoverText: "group-hover:text-green-600 dark:group-hover:text-green-400", |
26 | 26 | },
|
27 | 27 | purple: {
|
28 |
| - bg: 'bg-purple-100 dark:bg-purple-900', |
29 |
| - text: 'text-purple-600 dark:text-purple-400', |
30 |
| - hoverText: 'group-hover:text-purple-600 dark:group-hover:text-purple-400' |
31 |
| - } |
| 28 | + bg: "bg-purple-100 dark:bg-purple-900", |
| 29 | + text: "text-purple-600 dark:text-purple-400", |
| 30 | + hoverText: "group-hover:text-purple-600 dark:group-hover:text-purple-400", |
| 31 | + }, |
32 | 32 | };
|
33 | 33 |
|
34 | 34 | const colors = colorClasses[colorScheme];
|
35 | 35 |
|
36 | 36 | return (
|
37 |
| - <a |
38 |
| - href={href} |
| 37 | + <a |
| 38 | + href={href} |
39 | 39 | className="block group bg-white dark:bg-gray-900 border border-gray-200 dark:border-gray-700 rounded-lg p-6 hover:border-gray-300 dark:hover:border-gray-600 transition-colors"
|
40 | 40 | >
|
41 | 41 | <div className="flex items-center gap-3 mb-3">
|
42 |
| - <div className={`w-8 h-8 rounded-lg ${colors.bg} flex items-center justify-center`}> |
43 |
| - <div className={`w-4 h-4 ${colors.text}`}> |
44 |
| - {icon} |
45 |
| - </div> |
| 42 | + <div |
| 43 | + className={`w-8 h-8 rounded-lg ${colors.bg} flex items-center justify-center`} |
| 44 | + > |
| 45 | + <div className={`w-4 h-4 ${colors.text}`}>{icon}</div> |
46 | 46 | </div>
|
47 |
| - <h3 className={`text-lg font-semibold text-gray-900 dark:text-white ${colors.hoverText}`}> |
| 47 | + <h3 |
| 48 | + className={`text-lg font-semibold text-gray-900 dark:text-white ${colors.hoverText}`} |
| 49 | + > |
48 | 50 | {title}
|
49 | 51 | </h3>
|
50 | 52 | </div>
|
|
0 commit comments