GRV-Summit-Site/app/payment/page.tsx
“kirukib” 3693495dd0
Some checks are pending
Deploy to Cloudflare Workers (OpenNext) / deploy (push) Waiting to run
Add site-wide topography patterns and refine section styling.
Use mainwhite.svg on white sections with curvy green transitions into flat green bands, improve text and button contrast, and deploy via OpenNext on Cloudflare Workers.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-05-20 20:34:36 +03:00

49 lines
1.6 KiB
TypeScript

import type { Metadata } from "next";
import { pageSeo } from "@/content/page-seo";
import { createPageMetadata } from "@/lib/seo";
import { Suspense } from "react";
import { site } from "@/content/site";
import { ticketTiers } from "@/content/tickets";
import { PageRiftHeader } from "@/components/layout/PageRiftHeader";
import { Section } from "@/components/layout/Section";
import { PaymentForm } from "@/components/payment/PaymentForm";
import { TicketCard } from "@/components/tickets/TicketCard";
export const metadata: Metadata = createPageMetadata(pageSeo.payment);
export default function PaymentPage() {
return (
<>
<PageRiftHeader
variant="tickets"
eyebrow={site.dates.label}
title={<h1 className="text-4xl font-bold">Tickets & payment</h1>}
description={
<p>
Secure your place at {site.venue.name}, {site.venue.address}. Choose a pass and complete
checkout below.
</p>
}
/>
<Section>
<div className="grid gap-8 md:grid-cols-3 md:items-stretch">
{ticketTiers.map((tier, index) => (
<TicketCard key={tier.id} tier={tier} index={index} compact />
))}
</div>
</Section>
<Section variant="muted" id="checkout">
<h2 className="text-2xl font-bold">Checkout</h2>
<p className="mt-2 text-muted-foreground">Complete your registration in a few steps.</p>
<div className="mt-8">
<Suspense fallback={<p className="text-muted-foreground">Loading checkout</p>}>
<PaymentForm />
</Suspense>
</div>
</Section>
</>
);
}