import { Content as ContentType, isContent as isContentType, getMeta, } from '@vtex/gatsby-plugin-cms' import React, { FC, Suspense } from 'react' import { Helmet } from 'react-helmet-async' import Block from '../components/cms/Block' import { CMS_CONTENT, setupIframeListener } from '../components/cms/iframe' import { useLocalStorage } from '../components/cms/localStorage' import ErrorBoundary from '../components/Error/ErrorBoundary' import ErrorHandler from '../components/Error/ErrorHandler' import { isServer } from '../utils/env' if (!isServer) { setupIframeListener() } const Preview: FC = () => { const content = useLocalStorage(CMS_CONTENT) const isContent = isContentType(content) if (!isContent || !content) { return
No Preview found. Waiting for input
} const { beforeBlocks, blocks, afterBlocks, extraBlocks } = content const { title, slug } = getMeta(extraBlocks) as any return ( }> {title}
slug: {slug}
{beforeBlocks?.map((block, index) => ( Loading...}> ))} {blocks.map((block, index) => ( Loading...}> ))} {afterBlocks?.map((block, index) => ( Loading...}> ))}
) } export default Preview