@@ -4,6 +4,7 @@ import { Trophy } from 'lucide-react';
44import Image from 'next/image' ;
55import { SubmissionCardProps } from '@/types/hackathon' ;
66import BasicAvatar from '@/components/avatars/BasicAvatar' ;
7+ import { BoundlessButton } from '@/components/buttons/BoundlessButton' ;
78
89interface TopWinnerCardProps {
910 winner : HackathonWinner ;
@@ -12,6 +13,7 @@ interface TopWinnerCardProps {
1213
1314export const TopWinnerCard = ( { winner, submission } : TopWinnerCardProps ) => {
1415 const bannerUrl = winner ?. logo || '/images/default-project-banner.png' ; // Fallback to logo or default
16+ const projectUrl = `/projects/${ winner . submissionId } ?type=submission` ;
1517
1618 return (
1719 < div className = 'relative w-full overflow-hidden rounded-2xl border border-white/5 bg-[#0A0A0A] p-6 transition-all hover:border-white/10' >
@@ -63,36 +65,29 @@ export const TopWinnerCard = ({ winner, submission }: TopWinnerCardProps) => {
6365 'No description provided for this project.' }
6466 </ p >
6567
66- < div className = 'mt-auto flex items-center gap-4' >
67- < div className = 'flex -space-x-3' >
68- { winner . participants . map ( ( participant , idx ) => (
69- < BasicAvatar
70- key = { idx }
71- image = { participant . avatar }
72- name = { 'Participant' }
73- username = { participant . username }
74- />
75- // <Avatar
76- // key={idx}
77- // className='h-10 w-10 border-2 border-[#0A0A0A]'
78- // >
79- // <AvatarImage src={participant.avatar} />
80- // <AvatarFallback className='bg-white/5 text-xs font-bold text-white/60'>
81- // {participant.username.slice(0, 2).toUpperCase()}
82- // </AvatarFallback>
83- // </Avatar>
84- ) ) }
68+ < div className = 'mt-auto flex items-center justify-between gap-4' >
69+ < div className = 'flex items-center gap-4' >
70+ < div className = 'flex -space-x-3' >
71+ { winner . participants . map ( ( participant , idx ) => (
72+ < BasicAvatar
73+ key = { idx }
74+ image = { participant . avatar }
75+ name = { 'Participant' }
76+ username = { participant . username }
77+ />
78+ ) ) }
79+ </ div >
8580 </ div >
86- { /* <div className='flex flex-col'>
87- <span className='text-[10px] font-bold tracking-wider text-white/40 uppercase '>
88- {winner.teamName ? 'Team members' : 'Participant'}
89- </span>
90- <span className='text-xs font-medium text-white/80'>
91- {winner.teamName
92- ? winner.teamName
93- : winner.participants[0]?.username}
94- </span >
95- </div> */ }
81+
82+ < a href = { projectUrl } target = '_blank' rel = 'noopener noreferrer '>
83+ < BoundlessButton
84+ variant = 'outline'
85+ size = 'sm'
86+ className = 'hover:bg-primary h-9 rounded-xl border-white/5 bg-white/5 px-4 text-xs font-bold transition-all hover:text-black'
87+ >
88+ View Project
89+ </ BoundlessButton >
90+ </ a >
9691 </ div >
9792 </ div >
9893 </ div >
0 commit comments