{
// If fullscreen was blocked by the browser (no user gesture),
// any click in the presentation is itself a gesture — retry.
if (needsFullscreenGesture) {
enterFullscreen();
return;
}
goNext();
}}
>
{/* Exiting slide — rendered only during transition */}
{animating && prevIndex !== null && safeSlides[prevIndex] && (
)}
{/* Entering / current slide */}
{/* Controls overlay */}
e.stopPropagation()}
>
{currentIndex + 1} / {safeSlides.length}
{/* Progress bar */}
{/* Fullscreen-gesture fallback — shown when the browser blocked our
auto requestFullscreen() because there was no user gesture. */}
{needsFullscreenGesture && (
)}