Skip to content

Commit 5a12629

Browse files
committed
feat: add sponsors level
1 parent 3bcc9e8 commit 5a12629

15 files changed

Lines changed: 50 additions & 22 deletions

File tree

pwa/app/(con)/[locale]/con/2025/components/HomePage.tsx

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -76,8 +76,8 @@ const HomePage = ({ speakers, partners, images }: HomePageProps) => {
7676
}}
7777
/>
7878
</SectionSubTitle>
79-
<SpeakerList speakers={speakers} max={6} />
80-
{speakers.length > 6 ? (
79+
<SpeakerList speakers={speakers} max={9} />
80+
{speakers.length > 9 ? (
8181
<Button
8282
className="mx-auto my-7"
8383
to={`/${locale}/con/2025/speakers`}

pwa/components/con/home/Partners.tsx

Lines changed: 31 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -10,10 +10,18 @@ interface PartnersProps extends PropsWithChildren {
1010
interface PartnersGridProps extends PropsWithChildren {
1111
edition: string;
1212
partners: Partner[];
13-
small?: boolean;
13+
size?: "small" | "medium" | "big" | "xl";
1414
}
1515

16-
function PartnersGrid({ partners, edition, small = false }: PartnersGridProps) {
16+
function PartnersGrid({ partners, edition, size = "big" }: PartnersGridProps) {
17+
const imageSize =
18+
size === "small"
19+
? 140
20+
: size === "medium"
21+
? 160
22+
: size === "xl"
23+
? 200
24+
: 180;
1725
return (
1826
<div className="flex flex-col md:flex-row justify-center items-center flex-wrap py-6 border-dotted border-grey border-b-2">
1927
{partners.map(({ name, logo, link, edition: partnerEdition }) => (
@@ -29,12 +37,15 @@ function PartnersGrid({ partners, edition, small = false }: PartnersGridProps) {
2937
rel="nofollow noreferrer noopener"
3038
className={classNames(
3139
"flex items-center justify-center flex-col",
32-
small ? "max-w-[180px]" : " max-w-[240px]"
40+
size === "small" && "max-w-[180px]",
41+
size === "medium" && "max-w-[200]",
42+
size === "big" && "max-w-[220px]",
43+
size === "xl" && "max-w-[240px]"
3344
)}
3445
>
3546
<img
36-
width={small ? 140 : 200}
37-
height={small ? 140 : 200}
47+
width={imageSize}
48+
height={imageSize}
3849
src={`/images/con/${
3950
partnerEdition || edition
4051
}/partners/${logo}.png`}
@@ -49,13 +60,24 @@ function PartnersGrid({ partners, edition, small = false }: PartnersGridProps) {
4960
}
5061

5162
export default function Partners({ edition, data }: PartnersProps) {
52-
const sponsors = data.filter((p) => p.rank < 3);
53-
const partners = data.filter((p) => p.rank >= 3);
63+
const gold = data.filter((p) => p.rank === 1);
64+
const silver = data.filter((p) => p.rank === 2);
65+
const bronze = data.filter((p) => p.rank === 3);
66+
const partners = data.filter((p) => p.rank > 3);
67+
5468
return (
5569
<div className="mb-12">
56-
<PartnersGrid edition={edition} partners={sponsors} />
70+
{gold.length > 0 ? (
71+
<PartnersGrid edition={edition} partners={gold} size="xl" />
72+
) : null}
73+
{silver.length > 0 ? (
74+
<PartnersGrid edition={edition} partners={silver} />
75+
) : null}
76+
{bronze.length > 0 ? (
77+
<PartnersGrid edition={edition} partners={bronze} size="medium" />
78+
) : null}
5779
{partners.length > 0 ? (
58-
<PartnersGrid edition={edition} partners={partners} small />
80+
<PartnersGrid edition={edition} partners={partners} size="small" />
5981
) : null}
6082
</div>
6183
);

pwa/data/con/2025/partners.ts

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -43,6 +43,12 @@ const partners: Partner[] = [
4343
rank: 3,
4444
highlight: true,
4545
},
46+
{
47+
name: "Platform.sh",
48+
logo: "platform-sh",
49+
link: "https://platform.sh/",
50+
rank: 3,
51+
},
4652
{
4753
name: "Bakslash",
4854
logo: "bakslash",

pwa/data/con/2025/speakers/en/helvira-goma.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
---
22
type: speaker
33
id: helvira-goma-2025
4-
number: 100
4+
number: 80
55
name: Helvira Goma
66
job: Computer Whisperer
77
company: Sunday

pwa/data/con/2025/speakers/en/kevin-dunglas.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
---
22
type: speaker
33
id: kevin-dunglas-2025
4-
number: 100
4+
number: 80
55
name: Kévin Dunglas
66
job: API Platform creator
77
company:

pwa/data/con/2025/speakers/en/mathias-arlaud.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
---
22
type: speaker
33
id: mathias-arlaud-2025
4-
number: 100
4+
number: 80
55
name: Mathias Arlaud
66
job: Symfony Core Team
77
company: Bakslash

pwa/data/con/2025/speakers/en/smaine-milianni.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
---
22
type: speaker
33
id: smaine-milianni-2025
4-
number: 100
4+
number: 80
55
name: Smaïne Milianni
66
job: Engineering Manager
77
company: Yousign

pwa/data/con/2025/speakers/en/xavier-leune.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
---
22
type: speaker
33
id: xavier-leune-2025
4-
number: 100
4+
number: 80
55
name: Xavier Leune
66
job: Founder
77
company: Alke Tech

pwa/data/con/2025/speakers/fr/helvira-goma.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
---
22
type: speaker
33
id: helvira-goma-2025
4-
number: 100
4+
number: 80
55
name: Helvira Goma
66
job: Computer Whisperer
77
company: Sunday

pwa/data/con/2025/speakers/fr/kevin-dunglas.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
---
22
type: speaker
33
id: kevin-dunglas-2025
4-
number: 100
4+
number: 80
55
name: Kévin Dunglas
66
job: Creator
77
company: API Platform

0 commit comments

Comments
 (0)