chore: fmt
This commit is contained in:
@@ -35,7 +35,10 @@ function PostponedBanner() {
|
||||
<div className="flex flex-col items-center gap-3">
|
||||
<div
|
||||
className="inline-block px-4 py-1 font-['Intro',sans-serif] text-xs uppercase tracking-widest"
|
||||
style={{ background: "rgba(255,255,255,0.12)", color: "rgba(255,255,255,0.7)" }}
|
||||
style={{
|
||||
background: "rgba(255,255,255,0.12)",
|
||||
color: "rgba(255,255,255,0.7)",
|
||||
}}
|
||||
>
|
||||
Aankondiging
|
||||
</div>
|
||||
@@ -43,19 +46,24 @@ function PostponedBanner() {
|
||||
Dit evenement is uitgesteld
|
||||
</h2>
|
||||
<p className="max-w-lg text-base text-white/70 md:text-lg">
|
||||
De Open Mic Night van 24 april gaat helaas niet door op de geplande datum. We werken aan een nieuwe datum en laten je zo snel mogelijk weten wanneer het evenement plaatsvindt.
|
||||
De Open Mic Night van 24 april gaat helaas niet door op de geplande
|
||||
datum. We werken aan een nieuwe datum en laten je zo snel mogelijk
|
||||
weten wanneer het evenement plaatsvindt.
|
||||
</p>
|
||||
</div>
|
||||
|
||||
{/* Hairline divider */}
|
||||
<div
|
||||
className="h-px w-24"
|
||||
style={{ background: "linear-gradient(to right, transparent, rgba(255,255,255,0.2), transparent)" }}
|
||||
style={{
|
||||
background:
|
||||
"linear-gradient(to right, transparent, rgba(255,255,255,0.2), transparent)",
|
||||
}}
|
||||
/>
|
||||
|
||||
{/* Waitlist signup */}
|
||||
<div className="flex w-full max-w-md flex-col items-center gap-4">
|
||||
<p className="font-['Intro',sans-serif] text-sm uppercase tracking-widest text-white/50">
|
||||
<p className="font-['Intro',sans-serif] text-sm text-white/50 uppercase tracking-widest">
|
||||
Schrijf je in op de wachtlijst
|
||||
</p>
|
||||
<p className="text-sm text-white/60">
|
||||
@@ -65,7 +73,10 @@ function PostponedBanner() {
|
||||
{status === "subscribed" ? (
|
||||
<div
|
||||
className="flex flex-col items-center gap-2"
|
||||
style={{ animation: "reminderCheck 0.4s cubic-bezier(0.34,1.56,0.64,1) both" }}
|
||||
style={{
|
||||
animation:
|
||||
"reminderCheck 0.4s cubic-bezier(0.34,1.56,0.64,1) both",
|
||||
}}
|
||||
>
|
||||
<style>{`
|
||||
@keyframes reminderCheck {
|
||||
@@ -75,13 +86,29 @@ function PostponedBanner() {
|
||||
`}</style>
|
||||
<div
|
||||
className="flex h-10 w-10 items-center justify-center rounded-full"
|
||||
style={{ background: "rgba(255,255,255,0.12)", border: "1px solid rgba(255,255,255,0.2)" }}
|
||||
style={{
|
||||
background: "rgba(255,255,255,0.12)",
|
||||
border: "1px solid rgba(255,255,255,0.2)",
|
||||
}}
|
||||
>
|
||||
<svg width="16" height="16" viewBox="0 0 14 14" fill="none" aria-label="Vinkje" role="img">
|
||||
<path d="M2.5 7L5.5 10L11.5 4" stroke="white" strokeWidth="1.5" strokeLinecap="round" strokeLinejoin="round" />
|
||||
<svg
|
||||
width="16"
|
||||
height="16"
|
||||
viewBox="0 0 14 14"
|
||||
fill="none"
|
||||
aria-label="Vinkje"
|
||||
role="img"
|
||||
>
|
||||
<path
|
||||
d="M2.5 7L5.5 10L11.5 4"
|
||||
stroke="white"
|
||||
strokeWidth="1.5"
|
||||
strokeLinecap="round"
|
||||
strokeLinejoin="round"
|
||||
/>
|
||||
</svg>
|
||||
</div>
|
||||
<p className="font-['Intro',sans-serif] text-sm tracking-wide text-white/70">
|
||||
<p className="font-['Intro',sans-serif] text-sm text-white/70 tracking-wide">
|
||||
Je staat op de wachtlijst! We houden je op de hoogte.
|
||||
</p>
|
||||
</div>
|
||||
@@ -106,12 +133,23 @@ function PostponedBanner() {
|
||||
className="min-w-0 flex-1 bg-transparent px-4 py-3 text-sm text-white outline-none placeholder:text-white/30 disabled:opacity-50"
|
||||
style={{ fontFamily: "'Intro', sans-serif", fontSize: "0.85rem" }}
|
||||
/>
|
||||
<div style={{ width: "1px", background: "rgba(255,255,255,0.15)", flexShrink: 0 }} />
|
||||
<div
|
||||
style={{
|
||||
width: "1px",
|
||||
background: "rgba(255,255,255,0.15)",
|
||||
flexShrink: 0,
|
||||
}}
|
||||
/>
|
||||
<button
|
||||
type="submit"
|
||||
disabled={status === "loading" || !email}
|
||||
className="shrink-0 px-5 py-3 font-['Intro',sans-serif] text-xs font-semibold tracking-wide text-white/90 transition-all disabled:opacity-40"
|
||||
style={{ background: "transparent", cursor: status === "loading" || !email ? "not-allowed" : "pointer", whiteSpace: "nowrap" }}
|
||||
className="shrink-0 px-5 py-3 font-['Intro',sans-serif] font-semibold text-white/90 text-xs tracking-wide transition-all disabled:opacity-40"
|
||||
style={{
|
||||
background: "transparent",
|
||||
cursor:
|
||||
status === "loading" || !email ? "not-allowed" : "pointer",
|
||||
whiteSpace: "nowrap",
|
||||
}}
|
||||
>
|
||||
{status === "loading" ? "…" : "Inschrijven"}
|
||||
</button>
|
||||
@@ -119,7 +157,10 @@ function PostponedBanner() {
|
||||
)}
|
||||
|
||||
{status === "error" && (
|
||||
<p className="font-['Intro',sans-serif] text-xs" style={{ color: "rgba(255,140,140,0.8)" }}>
|
||||
<p
|
||||
className="font-['Intro',sans-serif] text-xs"
|
||||
style={{ color: "rgba(255,140,140,0.8)" }}
|
||||
>
|
||||
{errorMessage}
|
||||
</p>
|
||||
)}
|
||||
|
||||
@@ -568,16 +568,25 @@ function AdminPage() {
|
||||
<div className="overflow-x-auto">
|
||||
<table className="w-full text-sm">
|
||||
<thead>
|
||||
<tr className="border-b border-white/8 text-left">
|
||||
<th className="pb-2 font-mono text-[10px] text-white/30 uppercase tracking-widest">E-mail</th>
|
||||
<th className="pb-2 font-mono text-[10px] text-white/30 uppercase tracking-widest">Ingeschreven op</th>
|
||||
<tr className="border-white/8 border-b text-left">
|
||||
<th className="pb-2 font-mono text-[10px] text-white/30 uppercase tracking-widest">
|
||||
E-mail
|
||||
</th>
|
||||
<th className="pb-2 font-mono text-[10px] text-white/30 uppercase tracking-widest">
|
||||
Ingeschreven op
|
||||
</th>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody>
|
||||
{waitlistQuery.data.map((row) => (
|
||||
<tr key={row.id} className="border-b border-white/5 last:border-0">
|
||||
<td className="py-2 pr-8 font-mono text-xs text-white/70">{row.email}</td>
|
||||
<td className="py-2 font-mono text-xs text-white/40">
|
||||
<tr
|
||||
key={row.id}
|
||||
className="border-white/5 border-b last:border-0"
|
||||
>
|
||||
<td className="py-2 pr-8 font-mono text-white/70 text-xs">
|
||||
{row.email}
|
||||
</td>
|
||||
<td className="py-2 font-mono text-white/40 text-xs">
|
||||
{new Date(row.createdAt).toLocaleString("nl-BE", {
|
||||
day: "numeric",
|
||||
month: "short",
|
||||
|
||||
@@ -903,10 +903,7 @@ export const appRouter = {
|
||||
}),
|
||||
|
||||
getWaitlistSubscribers: adminProcedure.handler(async () => {
|
||||
return db
|
||||
.select()
|
||||
.from(reminder)
|
||||
.orderBy(desc(reminder.createdAt));
|
||||
return db.select().from(reminder).orderBy(desc(reminder.createdAt));
|
||||
}),
|
||||
|
||||
rejectAdminRequest: adminProcedure
|
||||
|
||||
Reference in New Issue
Block a user