/* eslint-disable react/display-name */ import Panel from "~/components/ui/panel"; import { useCallback, useEffect, useRef } from "react"; import { useProjectContext } from "../context/project"; import { Button } from "~/components/ui/button"; import { FaRedo } from "react-icons/fa"; import { previewStore } from "../stores/web-preview"; type WebPreviewProps = { url?: string | null; }; const WebPreview = ({ url }: WebPreviewProps) => { const frameRef = useRef(null); const project = useProjectContext(); const refresh = useCallback(() => { if (frameRef.current) { frameRef.current.src = `${url}?t=${Date.now()}`; } }, [url]); useEffect(() => { previewStore.setState({ refresh }); refresh(); }, [refresh]); const PanelComponent = !project.isCompact ? Panel : "div"; return (

Preview

{url != null ? (