@@ -12,6 +12,8 @@ interface Sponsor {
12
12
13
13
const sponsorDiamond : Sponsor [ ] = [ ]
14
14
15
+ const sponsorPlatinum : Sponsor [ ] = [ ]
16
+
15
17
const sponsorGold : Sponsor [ ] = [
16
18
{ icon : Apollo , name : "Apollo" , link : "https://www.apollographql.com" } ,
17
19
]
@@ -34,6 +36,10 @@ const sponsorTiers: Tier[] = [
34
36
name : "Diamond" ,
35
37
items : sponsorDiamond ,
36
38
} ,
39
+ {
40
+ name : "Platinum" ,
41
+ items : sponsorPlatinum ,
42
+ } ,
37
43
{
38
44
name : "Gold" ,
39
45
items : sponsorGold ,
@@ -51,23 +57,31 @@ export function Sponsors({ heading }: SponsorsProps) {
51
57
52
58
< div className = "mt-10 md:mt-16" >
53
59
{ sponsorTiers . map (
54
- tier => tier . items . length > 0 && < Tier key = { tier . name } tier = { tier } /> ,
60
+ tier =>
61
+ tier . items . length > 0 && (
62
+ < Tier
63
+ key = { tier . name }
64
+ tier = { tier }
65
+ logoHeight = { 220 - sponsorTiers . indexOf ( tier ) * 24 }
66
+ />
67
+ ) ,
55
68
) }
56
69
</ div >
57
70
</ section >
58
71
)
59
72
}
60
73
61
- function Tier ( { tier } : { tier : Tier } ) {
74
+ function Tier ( { tier, logoHeight } : { tier : Tier ; logoHeight : number } ) {
62
75
return (
63
76
< div className = "flex gap-x-12 gap-y-4 border-t border-neu-200 py-4 dark:border-neu-50 max-md:flex-col" >
64
- < h3 className = "flex w-[80px] items-center gap-1 self-start whitespace-nowrap font-mono text-sm/none font-normal uppercase text-primary" >
77
+ < h3 className = "flex w-[80px] shrink-0 items-center gap-1 self-start whitespace-nowrap font-mono text-sm/none font-normal uppercase text-primary" >
65
78
< ChevronRight className = "shrink-0 translate-y-[-0.5px]" />
66
79
{ tier . name }
67
80
</ h3 >
68
81
< div
69
82
className = { clsx (
70
- "grid justify-center gap-x-8 gap-y-4 sm:grid-cols-2 xl:grid-cols-3" ,
83
+ "grid justify-center gap-x-8 gap-y-4" ,
84
+ tier . items . length > 2 && "sm:grid-cols-2 xl:grid-cols-3" ,
71
85
) }
72
86
>
73
87
{ tier . items . map ( ( { link, icon : Icon , name } , i ) => (
@@ -77,9 +91,14 @@ function Tier({ tier }: { tier: Tier }) {
77
91
target = "_blank"
78
92
rel = "noreferrer"
79
93
title = { name }
80
- className = "group flex h-24 w-72 items-center justify-center opacity-75 [--fill:hsl(var(--color-neu-700))] hover:bg-neu-500/10 hover:[--fill:hsl(var(--color-neu-800))] dark:opacity-90"
94
+ className = "group flex min- h-24 items-center justify-center opacity-75 [--fill:hsl(var(--color-neu-700))] hover:bg-neu-500/10 hover:[--fill:hsl(var(--color-neu-800))] dark:opacity-90"
81
95
>
82
- < Icon className = "h-16 w-auto max-w-[80%] shrink-0 fill-[--fill] [&_path]:fill-[--fill]" />
96
+ < Icon
97
+ className = "aspect-[3] w-auto max-w-[80%] shrink-0 fill-[--fill] [&_path]:fill-[--fill]"
98
+ style = { {
99
+ height : logoHeight ,
100
+ } }
101
+ />
83
102
</ a >
84
103
) ) }
85
104
</ div >
0 commit comments