Files
supabase/apps/www/components/LaunchWeek/X/LaunchWeekPrizeSection.tsx
Ivan Vasilov 308cd791a2 chore: Prep work for migrating to Tailwind v4 (#45285)
This PR preps the monorepo for a migration to Tailwind v4:
- Bump all Tailwind dependencies and libraries to the latest possible
version, while still compatible with Tailwind 3.
- Cleans up obsolete Tailwind 3 specific options and configs.
- Cleans up unused CSS files and fixes the CSS imports.
- Migrates all `important` uses in `@apply` lines to using the `!`
prefix.
- Move `typography.css` to the `config` package and import it from the
apps.
- Migrated all occurrences of `flex-grow`, `flex-shrink`,
`overflow-clip` and `overflow-ellipsis` since they're deprecated and
will be removed in Tailwind 4.
- Make the default theme object typesafe in the `ui` package.
- Migrate all `bg-opacity`, `border-opacity`, `ring-opacity` and
`divider-opacity` to the new format where they're declared as part of
the property color.
- Bump and unify all imports of `postcss` dependency.
2026-04-28 11:33:53 +02:00

81 lines
2.9 KiB
TypeScript

import Image from 'next/image'
import React from 'react'
import { cn } from 'ui'
import LabelBadge from './LabelBadge'
import LaunchWeekPrizeCard from './LaunchWeekPrizeCard'
export default function LaunchWeekPrizeSection({ className }: { className?: string }) {
return (
<div
id="prizes"
className={cn(
'relative text-left flex flex-col max-w-7xl mx-auto gap-2 scroll-mt-[66px] text-[#575E61]',
className
)}
>
<h2 className="w-full text-sm font-mono uppercase tracking-[1px]">Awards</h2>
<div className="w-full pt-4">
<div className="grid grid-cols-1 md:grid-cols-3 gap-4 mx-auto h-auto text-[#EDEDED]">
<LaunchWeekPrizeCard
className="col-span-full md:col-span-2"
contentClassName="flex flex-col justify-between"
content={
<>
<div className="p-4 md:p-6 flex flex-col shrink gap-2 text-sm items-start">
<LabelBadge text="10 keyboards" />
<p className="text-lg text-[#8B9092] max-w-lg">
Limited-edition{' '}
<span className="text-[#EDEDED]">62-Key ISO Mechanical Keyboard</span>
</p>
</div>
<div className="px-4 mt-10 w-full">
<div className="relative w-full aspect-[3.078/1]">
<Image
src="/images/launchweek/lwx/swag/lwx_keyboard.png"
fill
sizes="100%"
quality={100}
alt="/images/launchweek/lwx/swag/lwx_keyboard.png"
className="h-full w-full block"
/>
</div>
</div>
</>
}
/>
<div className="w-full flex flex-col gap-4 items-stretch">
<LaunchWeekPrizeCard
className="grow"
content={
<div className="p-4 md:p-6 flex flex-col gap-2 text-sm items-start justify-between h-full">
<LabelBadge text="20 t-shirts" />
Launch Week X T-Shirt
</div>
}
/>
<LaunchWeekPrizeCard
className="grow"
content={
<div className="p-4 md:p-6 flex flex-col gap-2 text-sm items-start justify-between h-full">
<LabelBadge text="25 caps" />
Launch Week X Cap
</div>
}
/>
<LaunchWeekPrizeCard
className="grow"
content={
<div className="p-4 md:p-6 flex flex-col gap-2 text-sm items-start justify-between h-full">
<LabelBadge text="50 stickers" />
<p>Launch Week X Stickers</p>
</div>
}
/>
</div>
</div>
</div>
</div>
)
}