mirror of
https://github.com/supabase/supabase.git
synced 2026-10-16 22:59:11 +03:00
* feat: mamba d1 init * feat: ticketview less narrow * chore: d1 setup * Add D1 blog post * Add images * chore: d1 setup * chore: add blog post link * chore: add youtube link * chore: build stage links * chore: lw summary in blog post * chore: lw summary in blog post * chore: update banners * chore: update PromoToast * Add new imgs * spelling * Re-export images * fix rss * Re-export images * Minor fixes. * Update tags * Reorder posts * update unrelated rss * blog post edits * chore: update countdown * chore: claim redirect to ticket section * smol cleanup * blog images * add yt embed in blog post * link to gh discussion * fix: youtube video embed --------- Co-authored-by: Francesco Sansalvadore <f.sansalvadore@gmail.com> Co-authored-by: Terry Sutton <saltcod@gmail.com> Co-authored-by: Ivan Vasilov <vasilov.ivan@gmail.com>
94 lines
3.5 KiB
TypeScript
94 lines
3.5 KiB
TypeScript
import Image from 'next/image'
|
|
import { ActionButton } from '~/components/LaunchWeek/14/ActionButton'
|
|
import {
|
|
TicketHeader,
|
|
TicketHeaderClaim,
|
|
TicketHeaderDate,
|
|
TicketHeaderRemainingTime,
|
|
} from '~/components/LaunchWeek/14/Header'
|
|
import TicketCanvas from '~/components/LaunchWeek/14/TicketCanvas'
|
|
import {
|
|
TicketClaim,
|
|
TicketClaimButtons,
|
|
TicketClaimContent,
|
|
TicketClaimMessage,
|
|
} from '~/components/LaunchWeek/14/TicketClaim'
|
|
import TicketCopy from '~/components/LaunchWeek/14/TicketCopy'
|
|
import { TicketLayout, TicketLayoutCanvas } from '~/components/LaunchWeek/14/TicketLayout'
|
|
import TicketShare from '~/components/LaunchWeek/14/TicketShare'
|
|
import { Tunnel } from '~/components/LaunchWeek/14/Tunnel'
|
|
import { TicketShareLayout } from '~/components/LaunchWeek/14/TicketShareLayout'
|
|
import { useRegistration } from '~/components/LaunchWeek/14/hooks/use-registration'
|
|
import useConfData from './hooks/use-conf-data'
|
|
import { cn } from 'ui'
|
|
|
|
const dates = [new Date('2025-03-31T07:00:00.000-08:00')]
|
|
|
|
export const LwView = () => {
|
|
const [state] = useConfData()
|
|
const register = useRegistration()
|
|
|
|
return (
|
|
<TicketLayout>
|
|
<TicketHeader hidden={true}>
|
|
<TicketHeaderRemainingTime targetDate={dates[0]} />
|
|
<TicketHeaderClaim />
|
|
<TicketHeaderDate />
|
|
</TicketHeader>
|
|
<TicketLayoutCanvas narrow={true}>
|
|
<TicketCanvas narrow={true} onUpgradeToSecret={register.upgradeTicket} />
|
|
{state.claimFormState === 'visible' && (
|
|
<TicketClaim>
|
|
<div className="flex flex-col md:flex-row gap-12 lg:gap-2 grow w-full min-w-full max-w-full pt-16 md:pt-32 md:px-6 lg:px-0 lg:py-0 items-center">
|
|
<div className='flex flex-col gap-2 w-full grow justify-center font-["Departure_Mono"]'>
|
|
<h1 className="text-4xl uppercase tracking-wide pointer-events-none">
|
|
<span className="flex gap-1 items-center">
|
|
<Image
|
|
src="/images/launchweek/14/logo-pixel-small-dark.png"
|
|
width="18"
|
|
height="20"
|
|
className="w-auto h-5 invert dark:invert-0"
|
|
alt=""
|
|
/>
|
|
Supabase
|
|
</span>
|
|
LaunchWeek 14
|
|
<span className="block mt-2 text-foreground-lighter">MAR 31 — APR 04</span>
|
|
</h1>
|
|
<span className="block mt-2 text-foreground-lighter">7 AM PT</span>
|
|
</div>
|
|
<div className="flex flex-row gap-2 z-10 w-full grow justify-start lg:justify-end">
|
|
<TicketClaimContent>
|
|
<TicketClaimButtons>
|
|
<ActionButton variant="primary" icon="T" onClick={() => register.signIn()}>
|
|
CLAIM YOUR TICKET
|
|
</ActionButton>
|
|
</TicketClaimButtons>
|
|
<TicketClaimMessage />
|
|
</TicketClaimContent>
|
|
</div>
|
|
</div>
|
|
</TicketClaim>
|
|
)}
|
|
{state.ticketVisibility && (
|
|
<>
|
|
<TicketShareLayout narrow>
|
|
<TicketCopy />
|
|
<TicketShare />
|
|
</TicketShareLayout>
|
|
</>
|
|
)}
|
|
|
|
<div
|
|
className={cn(
|
|
'w-full absolute bottom-[50%] md:bottom-[25%] lg:-bottom-8 xl:-bottom-16 left-0 right-0 -z-20 overflow-hidden flex justify-center',
|
|
{ ['hidden']: state.claimFormState === 'visible' }
|
|
)}
|
|
>
|
|
<Tunnel />
|
|
</div>
|
|
</TicketLayoutCanvas>
|
|
</TicketLayout>
|
|
)
|
|
}
|