@@ -7,6 +7,7 @@ import Link from "components/common/Link";
77import SpeakerImage from "components/con/speakers/SpeakerImage" ;
88import Button from "components/con/common/Button" ;
99import { LanguageContext } from "contexts/con/LanguageContext" ;
10+ import SpeakerImage2025 from "components/con/speakers/SpeakerImage2025" ;
1011
1112interface SpeakerProps {
1213 conference : Conference ;
@@ -21,69 +22,71 @@ const ConferenceSpeaker = ({ conference }: SpeakerProps) => {
2122 { speakers . map ( ( speaker : Speaker ) => {
2223 const { name, job, company, image, placeholder, url } = speaker ;
2324 return (
24- < div
25- key = { speaker . name }
26- className = { classNames (
27- "bg-blue-gradient bg-blue text-center px-5 py-5 border-b-2 border-dotted border-b-white/50 last:border-b-0 group hover:bg-blue-dark transition-colors" ,
28- speakers . length === 1 && "md:hover:bg-blue md:pt-10 md:pb-5"
29- ) }
30- >
31- < Link
32- href = { url }
25+ < >
26+ < div
27+ key = { speaker . name }
3328 className = { classNames (
34- "flex flex-row items -center" ,
35- speakers . length === 1 && "md:flex-col "
29+ "bg-blue-gradient bg-blue text -center px-5 py-5 border-b-2 border-dotted border-b-white/50 last:border-b-0 group hover:bg-blue-dark transition-colors " ,
30+ speakers . length === 1 && "md:hover:bg-blue md:pt-10 md:pb-5 "
3631 ) }
3732 >
38- < div
33+ < Link
34+ href = { url }
3935 className = { classNames (
40- "w-20 h-20 " ,
41- speakers . length === 1 && "md:mx-auto md:w-60 md:h-60 "
36+ "flex flex-row items-center " ,
37+ speakers . length === 1 && "md:flex-col "
4238 ) }
4339 >
44- < SpeakerImage
45- image = { image }
46- placeholder = { placeholder }
47- hoverable = { false }
48- />
49- </ div >
40+ < div
41+ className = { classNames (
42+ "w-20 h-20 relative" ,
43+ speakers . length === 1 && "md:mx-auto md:w-60 md:h-60"
44+ ) }
45+ >
46+ { conference . edition === "2025" ? (
47+ < SpeakerImage2025 speaker = { speaker } image = { image } />
48+ ) : (
49+ < SpeakerImage image = { image } placeholder = { placeholder } />
50+ ) }
51+ </ div >
5052
51- < div
52- className = { classNames (
53- "text-inherit uppercase font-title ml-5 flex-1 transition-colors group-hover:text-white" ,
54- speakers . length === 1 &&
55- "md:mt-7 md:ml-0 md:group-hover:text-blue-black"
56- ) }
57- >
58- < span
53+ < div
5954 className = { classNames (
60- "inline-block leading-tight font-semibold text-lg" ,
61- speakers . length === 1 && "md:text-xl"
55+ "text-inherit uppercase font-title ml-5 flex-1 transition-colors group-hover:text-white" ,
56+ speakers . length === 1 &&
57+ "md:mt-7 md:ml-0 md:group-hover:text-blue-black"
6258 ) }
6359 >
64- { name }
65- </ span >
66- < Overline className = "text-white lined-center lined-white/50" >
67- { job }
68- < br />
69- { company ? (
70- < >
71- @ < strong className = "font-normal" > { company } </ strong >
72- </ >
73- ) : null }
74- </ Overline >
75- </ div >
76- </ Link >
77- { speakers . length === 1 && (
78- < Button
79- className = "mt-5 white square hidden md:inline-block"
80- size = "small"
81- to = { speaker . url }
82- >
83- { t ( "conferences.see_speaker_details" ) }
84- </ Button >
85- ) }
86- </ div >
60+ < span
61+ className = { classNames (
62+ "inline-block leading-tight font-semibold text-lg" ,
63+ speakers . length === 1 && "md:text-xl"
64+ ) }
65+ >
66+ { name }
67+ </ span >
68+ < Overline className = "text-white lined-center lined-white/50" >
69+ { job }
70+ < br />
71+ { company ? (
72+ < >
73+ @ < strong className = "font-normal" > { company } </ strong >
74+ </ >
75+ ) : null }
76+ </ Overline >
77+ </ div >
78+ </ Link >
79+ { speakers . length === 1 && (
80+ < Button
81+ className = "mt-5 white square hidden md:inline-block"
82+ size = "small"
83+ to = { speaker . url }
84+ >
85+ { t ( "conferences.see_speaker_details" ) }
86+ </ Button >
87+ ) }
88+ </ div >
89+ </ >
8790 ) ;
8891 } ) }
8992 </ div >
0 commit comments