'use client' import { PageView } from '@/components/interactive-page/page-view' import { validateInteractivePage, type PageSpecV1 } from '@/lib/interactive-page' import { AlertCircle } from 'lucide-react' /** * Public / preview shell for published interactive pages. * Parses stored PageSpecV1 JSON from `publishedContent`. */ export function InteractivePublishedPage({ publishedContent, isStale, }: { publishedContent: string isStale?: boolean }) { let page: PageSpecV1 | null = null let error: string | null = null try { const raw = JSON.parse(publishedContent) const result = validateInteractivePage(raw) if (result.ok) page = result.page else error = result.issues[0]?.message || 'PageSpec invalide' } catch { error = 'JSON de page interactive illisible' } if (!page) { return (
{error || 'Page interactive indisponible'}