@@ -98,6 +98,7 @@ const { data: latest } = await useAsyncData(() =>
98
98
)
99
99
100
100
const { data : sponsors } = await useAsyncData (() => useSponsors ())
101
+ const { data : contributors } = await useAsyncData (() => useContributors ())
101
102
</script >
102
103
103
104
<template >
@@ -190,48 +191,43 @@ const { data: sponsors } = await useAsyncData(() => useSponsors())
190
191
</template >
191
192
</UPageSection >
192
193
193
- <UPageSection v-if =" landing.contributors && landing._github" id =" contributors" title =" 💛 Contributors" >
194
- <div id =" contributors" class =" flex justify-center" >
195
- <a :href =" `https://github.com/${landing._github}/graphs/contributors`" target =" _blank" >
196
- <img :src =" `https://contrib.rocks/image?repo=${landing._github}`" />
197
- </a >
198
- </div >
199
- </UPageSection >
200
-
201
- <UPageSection v-if =" sponsors?.sponsors.length" title =" 💜 Sponsors" >
194
+ <UPageSection v-if =" sponsors?.sponsors.length" title =" Sponsors" >
202
195
<div id =" sponsors" class =" flex flex-col items-center" >
203
196
<div
204
197
v-for =" (tier, i) of sponsors.sponsors.slice(0, 2)"
205
198
:key =" i"
206
- class =" flex flex-wrap justify-center gap-4 mb-6 mt-6 max-w-4xl"
199
+ class =" flex flex-wrap justify-center gap-4 max-w-4xl mb-8 mt-8 "
207
200
>
208
201
<div v-for =" s in tier" :key =" s.name" class =" flex items-center gap-2 max-w-[300px]" >
209
202
<a
210
203
:href =" s.website"
211
204
target =" _blank"
212
205
class =" flex items-center gap-2"
213
- :class =" `font-size-${i === 0 ? '4xl ' : i === 1 ? '3xl ' : 'lg'}`"
206
+ :class =" `font-size-${i === 0 ? '3xl ' : i === 1 ? 'xl ' : 'lg'}`"
214
207
>
215
208
<img
216
209
v-if =" s.image"
217
210
:src =" s.image"
218
211
:alt =" s.name"
219
212
class =" object-contain rounded-lg"
220
- :class =" `w-${i === 0 ? 16 : 10} h-${i === 0 ? 16 : 10}`"
213
+ :style =" {
214
+ width: i === 0 ? '80px' : '48px',
215
+ height: i === 0 ? '80px' : '48px',
216
+ }"
221
217
/>
222
218
<span v-if =" i < 2" class =" text-lg font-semibold" >{{ s.name }}</span >
223
219
</a >
224
220
</div >
225
221
</div >
226
- <UAvatarGroup class =" flex flex-wrap justify-center gap-4 mb-6 mt-6 " >
222
+ <UAvatarGroup class =" flex flex-wrap justify-center gap-4" >
227
223
<UTooltip v-for =" s in sponsors.sponsors[2]" :key =" s.name" :text =" s.name" placement =" top" >
228
224
<a :href =" s.website" target =" _blank" >
229
225
<UAvatar :alt =" s.name" :src =" s.image" size =" lg" />
230
226
</a >
231
227
</UTooltip >
232
228
</UAvatarGroup >
233
- <UAvatarGroup class =" flex flex-wrap justify-center gap-4 mb-6 mt-6 " >
234
- <UTooltip v-for =" s in sponsors.sponsors[3]" :key =" s.name" :text =" s.name" placement = " top " >
229
+ <UAvatarGroup class =" flex flex-wrap justify-center gap-4" >
230
+ <UTooltip v-for =" s in sponsors.sponsors[3]" :key =" s.name" :text =" s.name" >
235
231
<a :href =" s.website" target =" _blank" >
236
232
<UAvatar :alt =" s.name" :src =" s.image" style =" opacity : 0.5 " />
237
233
</a >
@@ -249,5 +245,20 @@ const { data: sponsors } = await useAsyncData(() => useSponsors())
249
245
</UButton >
250
246
</div >
251
247
</UPageSection >
248
+
249
+ <UPageSection v-if =" contributors?.length" id =" contributors" title =" Contributors" >
250
+ <UAvatarGroup class =" flex flex-wrap justify-center gap-4" >
251
+ <UTooltip v-for =" c in contributors" :key =" c.username" :text =" c.name" >
252
+ <a :href =" c.profile" target =" _blank" >
253
+ <UAvatar :alt =" c.name" :src =" c.avatar" size =" 3xl" />
254
+ </a >
255
+ </UTooltip >
256
+ </UAvatarGroup >
257
+ <div class =" text-center" >
258
+ <UButton v-if =" sponsors.username" :to =" `https://github.com/${landing._github}`" target =" _blank" color =" neutral" >
259
+ Contribute on GitHub
260
+ </UButton >
261
+ </div >
262
+ </UPageSection >
252
263
</div >
253
264
</template >
0 commit comments