Skip to content

Commit 7940f4f

Browse files
authored
conf page feedback - 2 (#1893)
* feat: use href tel for phone numbers * fix: hotel website links to open in new tab * feat: use <time> tag * feat: use <address> tag * remove the translate animation * fix: hero dates & address responsiveness * fix: hero styles * fix: finally fix breakpoint issues for sponsor logos
1 parent 0c3c7b5 commit 7940f4f

File tree

4 files changed

+30
-23
lines changed

4 files changed

+30
-23
lines changed

src/app/conf/2025/faq.tsx

+1-1
Original file line numberDiff line numberDiff line change
@@ -67,7 +67,7 @@ export function FAQ() {
6767
className="group border-b border-dashed border-white/10"
6868
>
6969
<summary className="flex cursor-pointer list-none items-center justify-start gap-2 py-6 text-left focus:outline-none">
70-
<ArrowRight className="size-5 shrink-0 transition-transform duration-200 group-open:rotate-90 group-hover:translate-x-1" />
70+
<ArrowRight className="size-5 shrink-0 transition-transform duration-200 group-open:rotate-90" />
7171
<span className="select-none text-lg">{faq.question}</span>
7272
</summary>
7373
<p

src/app/conf/2025/page.tsx

+10-10
Original file line numberDiff line numberDiff line change
@@ -22,19 +22,19 @@ function Hero() {
2222
<section className="conf-hero-2025 relative">
2323
<div className="flex h-full flex-col justify-center py-16 md:py-28">
2424
<div className="flex flex-col items-center justify-center">
25-
<h1
26-
style={{
27-
fontSize: "min(calc(10px + 80vw / 12), 150px)",
28-
fontWeight: "bold",
29-
fontFamily: rubik.style.fontFamily,
30-
}}
31-
>
25+
<h1 className="text-center text-5xl font-bold md:text-7xl">
3226
GraphQLConf <span className="font-light">2025</span>
3327
</h1>
3428
<HostedByGraphQLFoundation className="mb-6 h-8 w-full shrink-0 self-start lg:h-10" />
35-
<span className={`${rubik.className} text-xl font-medium`}>
36-
September 08 - 10, 2025 | Amsterdam, Netherlands
37-
</span>
29+
<div className="flex flex-col justify-center text-xl font-medium md:flex-row md:gap-2">
30+
<div className="flex items-center gap-1">
31+
<time dateTime="2025-09-08">September 08</time>
32+
<span>-</span>
33+
<time dateTime="2025-09-10">10, 2025</time>
34+
</div>
35+
<span className="hidden md:block">|</span>
36+
<address className="not-italic">Amsterdam, Netherlands</address>
37+
</div>
3838
</div>
3939
</div>
4040
<div

src/app/conf/2025/past-sponsors.tsx

+6-1
Original file line numberDiff line numberDiff line change
@@ -61,7 +61,12 @@ function List({
6161
linkClassName?: string
6262
}) {
6363
return (
64-
<div className={clsx("flex gap-6 max-lg:flex-col", className)}>
64+
<div
65+
className={clsx(
66+
"grid grid-cols-1 md:grid-cols-2 lg:grid-cols-3",
67+
className,
68+
)}
69+
>
6570
{items.map(({ link, icon, name }, i) => (
6671
<a
6772
key={i}

src/app/conf/2025/venue.tsx

+13-11
Original file line numberDiff line numberDiff line change
@@ -9,20 +9,17 @@ const HOTELS = [
99
{
1010
name: "Mövenpick Hotel Amsterdam City Centre",
1111
link: "https://movenpick.accor.com/en/europe/netherlands/amsterdam/hotel-amsterdam.html?utm_source=google&utm_medium=local&utm_campaign=hotel-MHR-Amsterdam-city-center&y_source=1_MTUzNjI2OTgtNzE1LWxvY2F0aW9uLndlYnNpdGU%3D",
12-
description:
13-
"Piet Heinkade 11\n1019 BR Amsterdam, Netherlands\nPhone: +31 20 519 1200",
12+
description: `Piet Heinkade 11\n1019 BR Amsterdam, Netherlands\nPhone: <a class="hover:text-primary underline" href="tel:+31 20 519 1200">+31 20 519 1200</a>`,
1413
},
1514
{
1615
name: "Inntel Hotels Amsterdam Landmark",
1716
link: "https://www.inntelhotelsamsterdamlandmark.nl/",
18-
description:
19-
"VOC-kade 600\n1018 LG Amsterdam, Netherlands\n Phone: +31 20 227 2550",
17+
description: `VOC-kade 600\n1018 LG Amsterdam, Netherlands\n Phone: <a class="hover:text-primary underline" href="tel:+31 20 227 2550">+31 20 227 2550</a>`,
2018
},
2119
{
2220
name: "DoubleTree by Hilton Amsterdam Central Station",
2321
link: "https://www.hilton.com/en/hotels/amscsdi-doubletree-amsterdam-centraal-station/?SEO_id=GMB-EMEA-DI-AMSCSDI",
24-
description:
25-
"Oosterdoksstraat 4 \n1011 DK Amsterdam, Netherlands\nPhone: +31 20 530 0800",
22+
description: `Oosterdoksstraat 4 \n1011 DK Amsterdam, Netherlands\nPhone: <a class="hover:text-primary underline" href="tel:+31 20 530 0800">+31 20 530 0800</a>`,
2623
},
2724
]
2825

@@ -54,11 +51,11 @@ export function Venue() {
5451
<div className="grid grid-cols-1 gap-10 md:grid-cols-2">
5552
<div className="flex flex-col gap-2">
5653
<h2 className="text-3xl">Conference</h2>
57-
<p>
54+
<address className="not-italic">
5855
<strong>Pakhuis De Zwijger</strong>
5956
<br /> Piet Heinkade 179, 1019 HC <br />
6057
Amsterdam, Netherlands
61-
</p>
58+
</address>
6259
<div className="flex flex-col gap-2">
6360
<h3 className="mt-4 text-xl font-semibold">
6461
How to get to the venue?
@@ -83,18 +80,23 @@ export function Venue() {
8380
</p>
8481
<div className="mt-10 flex flex-col gap-4">
8582
{HOTELS.map(hotel => (
86-
<div key={hotel.name}>
83+
<address className="not-italic" key={hotel.name}>
8784
<strong>
8885
<a
8986
className="flex items-center gap-1 hover:underline"
87+
target="_blank"
88+
rel="noreferrer"
9089
href={hotel.link}
9190
>
9291
{hotel.name}
9392
<ExternalLink size={14} />
9493
</a>
9594
</strong>
96-
<p className="whitespace-pre-wrap">{hotel.description}</p>
97-
</div>
95+
<span
96+
className="whitespace-pre-wrap"
97+
dangerouslySetInnerHTML={{ __html: hotel.description }}
98+
/>
99+
</address>
98100
))}
99101
</div>
100102
</div>

0 commit comments

Comments
 (0)