fix(studio): show block preview directly in the player area

Render the catalog hover preview as a full-bleed video inside the
preview overlay slot instead of a dimmed card overlay on top.
This commit is contained in:
Miguel Ángel
2026-05-21 18:27:29 -04:00
parent 9f9b9f4c06
commit f51d324ff5
@@ -132,7 +132,26 @@ export function StudioPreviewArea({
}}
onIframeRef={handlePreviewIframeRef}
previewOverlay={
captionEditMode ? (
blockPreview ? (
<div className="absolute inset-0 z-30 bg-black pointer-events-none">
{blockPreview.videoUrl ? (
<video
src={blockPreview.videoUrl}
autoPlay
muted
loop
playsInline
className="w-full h-full object-contain"
/>
) : blockPreview.posterUrl ? (
<img
src={blockPreview.posterUrl}
alt={blockPreview.title}
className="w-full h-full object-contain"
/>
) : null}
</div>
) : captionEditMode ? (
<CaptionOverlay iframeRef={previewIframeRef} />
) : STUDIO_INSPECTOR_PANELS_ENABLED ? (
<DomEditOverlay
@@ -177,33 +196,6 @@ export function StudioPreviewArea({
timelineVisible={timelineVisible}
onToggleTimeline={toggleTimelineVisibility}
/>
{blockPreview && (
<div className="absolute inset-0 z-40 flex items-center justify-center bg-black/70 pointer-events-none">
<div className="relative w-[80%] max-w-[900px] rounded-lg overflow-hidden shadow-2xl border border-neutral-700/40">
<div className="aspect-video bg-neutral-950">
{blockPreview.videoUrl ? (
<video
src={blockPreview.videoUrl}
autoPlay
muted
loop
playsInline
className="w-full h-full object-contain"
/>
) : blockPreview.posterUrl ? (
<img
src={blockPreview.posterUrl}
alt={blockPreview.title}
className="w-full h-full object-contain"
/>
) : null}
</div>
<div className="bg-neutral-900/95 px-3 py-2">
<div className="text-[12px] font-medium text-neutral-200">{blockPreview.title}</div>
</div>
</div>
</div>
)}
</div>
);
}