File tree Expand file tree Collapse file tree 3 files changed +24
-10
lines changed
src/app/conf/2025/components/get-your-ticket Expand file tree Collapse file tree 3 files changed +24
-10
lines changed Original file line number Diff line number Diff line change @@ -20,7 +20,7 @@ export function GetYourTicket({ className }: { className?: string }) {
2020 < h2 className = "whitespace-pre text-white typography-h2" >
2121 Get your ticket
2222 </ h2 >
23- < p className = "text-neu-800 typography-body-md " >
23+ < p className = "text-neu-800 typography-body-lg " >
2424 The registration deadline is 23:59 Central European Time on the
2525 respective date.
2626 </ p >
Original file line number Diff line number Diff line change @@ -5,21 +5,28 @@ import { GET_TICKETS_LINK } from "../../links"
55export interface TicketPeriodProps {
66 price : string
77 date : Date | [ Date , Date ]
8- disabled ?: boolean
8+ soldOut ?: boolean
9+ comingSoon ?: boolean
910 name : string
1011}
1112
1213export function TicketPeriod ( {
1314 price,
1415 date,
15- disabled,
16+ soldOut,
17+ comingSoon,
1618 name,
1719} : TicketPeriodProps ) {
20+ const disabled = soldOut || comingSoon
21+
1822 return (
1923 < article
24+ data-disabled = { disabled }
2025 className = { clsx (
2126 "flex flex-col border border-pri-lighter bg-pri-light/[0.24] backdrop-blur-md transition @container/card max-md:[&+&]:border-t-0 md:[&+&]:border-l-0" ,
22- disabled && "opacity-50" ,
27+ disabled
28+ ? "opacity-50 max-md:[&:has(+article[data-disabled=false])]:border-b-0 md:[&:has(+article[data-disabled=false])]:border-r-0"
29+ : "!border" ,
2330 ) }
2431 >
2532 < header className = "border-b border-pri-lighter p-6" >
@@ -39,7 +46,10 @@ export function TicketPeriod({
3946 < Time date = { date [ 1 ] } />
4047 </ >
4148 ) : (
42- < Time date = { date } />
49+ < >
50+ < span > Through </ span >
51+ < Time date = { date } />
52+ </ >
4353 ) }
4454 </ span >
4555 </ div >
@@ -49,7 +59,7 @@ export function TicketPeriod({
4959 className = "light w-full"
5060 href = { GET_TICKETS_LINK }
5161 >
52- Get a ticket
62+ { soldOut ? "Sold out" : comingSoon ? "Coming soon" : " Get a ticket" }
5363 </ Button >
5464 </ div >
5565 </ article >
Original file line number Diff line number Diff line change @@ -18,19 +18,22 @@ export function TicketPeriods() {
1818 name = "Early Bird"
1919 price = "$599"
2020 date = { EARLY_BIRD_END_DATE }
21- disabled = { now > EARLY_BIRD_END_DATE }
21+ comingSoon = { false }
22+ soldOut = { now > EARLY_BIRD_END_DATE }
2223 />
2324 < TicketPeriod
2425 name = "Standard"
2526 price = "$799"
2627 date = { [ new Date ( 2025 , 6 , 14 ) , STANDARD_END_DATE ] }
27- disabled = { now > STANDARD_END_DATE || now < EARLY_BIRD_END_DATE }
28+ comingSoon = { now < EARLY_BIRD_END_DATE }
29+ soldOut = { now > STANDARD_END_DATE }
2830 />
2931 < TicketPeriod
3032 name = "Late"
3133 price = "$899"
3234 date = { [ new Date ( 2025 , 8 , 1 ) , LATE_END_DATE ] }
33- disabled = { now > LATE_END_DATE || now < STANDARD_END_DATE }
35+ comingSoon = { now < STANDARD_END_DATE }
36+ soldOut = { now > LATE_END_DATE }
3437 />
3538 </ >
3639 )
@@ -42,7 +45,8 @@ function useCurrentDate() {
4245 const [ date , setDate ] = useState < Date > ( DEFAULT_DATE )
4346
4447 useEffect ( ( ) => {
45- setDate ( new Date ( ) )
48+ const end = new Date ( 2025 , 6 , 14 )
49+ setDate ( end )
4650 } , [ ] )
4751
4852 return date
You can’t perform that action at this time.
0 commit comments