"use client"; import * as React from "react"; import { cn } from "./lib/utils"; export interface GalleryLightboxProps extends React.HTMLAttributes { items?: string[]; } /** Gallery lightbox stub: thumb grid with keyboard-paged viewer. */ export function GalleryLightbox({ items = ["STAGE A", "CROWD", "VIP BOX", "ENCORE"], className, ...props }: GalleryLightboxProps) { const [index, setIndex] = React.useState(null); const close = () => setIndex(null); React.useEffect(() => { if (index === null) return; const onKey = (e: KeyboardEvent) => { if (e.key === "Escape") close(); if (e.key === "ArrowRight") setIndex((i) => (i === null ? i : (i + 1) % items.length)); if (e.key === "ArrowLeft") setIndex((i) => (i === null ? i : (i - 1 + items.length) % items.length)); }; window.addEventListener("keydown", onKey); return () => window.removeEventListener("keydown", onKey); }, [index, items.length]); return (
{items.map((t, i) => ( ))}
{index !== null && (
e.stopPropagation()}>

{items[index]}

{index + 1} / {items.length}

)}
); }