import { EVENT_COCKPIT_CSS } from "./cockpit_styles.ts"; export const EventCockpitDeckFragment = ( { eventPasses }: { eventPasses: any[] }, ) => { if (!eventPasses || eventPasses.length === 0) return null; const now = Date.now(); const activePasses = eventPasses.filter((e) => !e.expires_at || new Date(e.expires_at).getTime() > now ); const expiredPasses = eventPasses.filter((e) => e.expires_at && new Date(e.expires_at).getTime() <= now ); return (

Events

{activePasses.map((event) => { const expDate = new Date(event.expires_at); const timeString = expDate.toLocaleTimeString([], { hour: "2-digit", minute: "2-digit", }); return (

{event.name}

โณ 0h 0m left ยท (Expires {timeString})
Active
{/* Progress Bar for Seats */}
Seats Claimed {event.seats_claimed} /{" "} {event.max_seats === 0 ? "โˆž" : event.max_seats}
0 ? Math.min( (event.seats_claimed / event.max_seats) * 100, 100, ) : 100 }%;`} >
{/* Quick Copy Snippets */}
PIN: {event.pin_code}
Link: /e/{event.slug}
CLI: curl -sSL {Deno.env.get("RP_ID") ? `https://${Deno.env.get("RP_ID")}` : ""}/join/{event.slug}?format=env | source /dev/stdin [ โ–พ ]
{/* Cockpit Actions */}
{/* Compact Actions */}
PIN:{" "} {event.pin_code} {" "} (Copy) Link (Copy) CLI (Copy)
); })}
{/* Collapsible Expired Events Section */} {expiredPasses.length > 0 && (
๐Ÿ“ Expired Events ({expiredPasses.length})
{expiredPasses.map((event) => (
{event.name} Expired
Expired {new Date(event.expires_at).toLocaleDateString()} ยท {" "} {event.seats_claimed} claimed seats
))}
)}
); };