From db8c40c9745998804a154f2258e0ac4568e98a83 Mon Sep 17 00:00:00 2001 From: johndoe6345789 Date: Sun, 18 Jan 2026 00:54:51 +0000 Subject: [PATCH] Expose preview URL from preview dialog --- src/components/PreviewDialog.tsx | 12 +++++++++--- 1 file changed, 9 insertions(+), 3 deletions(-) diff --git a/src/components/PreviewDialog.tsx b/src/components/PreviewDialog.tsx index 77d0e64..37b8646 100644 --- a/src/components/PreviewDialog.tsx +++ b/src/components/PreviewDialog.tsx @@ -6,9 +6,10 @@ import { useEffect, useState } from 'react' interface PreviewDialogProps { open: boolean onOpenChange: (open: boolean) => void + onPreviewUrlChange?: (url: string) => void } -export function PreviewDialog({ open, onOpenChange }: PreviewDialogProps) { +export function PreviewDialog({ open, onOpenChange, onPreviewUrlChange }: PreviewDialogProps) { const [previewUrl, setPreviewUrl] = useState('') useEffect(() => { @@ -16,9 +17,14 @@ export function PreviewDialog({ open, onOpenChange }: PreviewDialogProps) { const currentUrl = window.location.href const url = new URL(currentUrl) url.searchParams.set('preview', 'true') - setPreviewUrl(url.toString()) + const nextUrl = url.toString() + setPreviewUrl(nextUrl) + onPreviewUrlChange?.(nextUrl) + return } - }, [open]) + setPreviewUrl('') + onPreviewUrlChange?.('') + }, [open, onPreviewUrlChange]) const handleOpenInNewTab = () => { if (previewUrl) {