Some checks failed
Build & Deploy / 🔍 Prepare (push) Successful in 20s
Build & Deploy / 🧪 QA (push) Failing after 34s
Build & Deploy / 🏗️ Build (push) Has started running
Build & Deploy / 🚀 Deploy (push) Has been cancelled
Build & Deploy / 🧪 Smoke Test (push) Has been cancelled
Build & Deploy / ⚡ Lighthouse (push) Has been cancelled
Build & Deploy / 🔔 Notify (push) Has been cancelled
1 line
9.6 KiB
Plaintext
1 line
9.6 KiB
Plaintext
{"version":3,"file":"index.js","names":["c","_c","reduceFieldsToValues","React","useEffect","useAllFormFields","useDocumentEvents","useDocumentInfo","useLivePreviewContext","useLocale","ShimmerEffect","DeviceContainer","IFrame","LivePreviewToolbar","baseClass","LivePreviewWindow","props","$","appIsReady","breakpoint","iframeRef","isLivePreviewing","loadedURL","popupRef","previewWindowType","url","locale","mostRecentUpdate","formState","id","collectionSlug","globalSlug","t0","values","message","type","data","externallyUpdatedRelationship","code","current","postMessage","contentWindow","t1","t2","message_0","t3","t4","t5","t6","filter","Boolean","t7","join","t8","_jsx","className","children","_jsxs","height"],"sources":["../../../../src/elements/LivePreview/Window/index.tsx"],"sourcesContent":["'use client'\n\nimport type { EditViewProps } from 'payload'\n\nimport { reduceFieldsToValues } from 'payload/shared'\nimport React, { useEffect } from 'react'\n\nimport { useAllFormFields } from '../../../forms/Form/context.js'\nimport { useDocumentEvents } from '../../../providers/DocumentEvents/index.js'\nimport { useDocumentInfo } from '../../../providers/DocumentInfo/index.js'\nimport { useLivePreviewContext } from '../../../providers/LivePreview/context.js'\nimport { useLocale } from '../../../providers/Locale/index.js'\nimport { ShimmerEffect } from '../../ShimmerEffect/index.js'\nimport { DeviceContainer } from '../Device/index.js'\nimport { IFrame } from '../IFrame/index.js'\nimport { LivePreviewToolbar } from '../Toolbar/index.js'\nimport './index.scss'\n\nconst baseClass = 'live-preview-window'\n\nexport const LivePreviewWindow: React.FC<EditViewProps> = (props) => {\n const {\n appIsReady,\n breakpoint,\n iframeRef,\n isLivePreviewing,\n loadedURL,\n popupRef,\n previewWindowType,\n url,\n } = useLivePreviewContext()\n\n const locale = useLocale()\n\n const { mostRecentUpdate } = useDocumentEvents()\n\n const [formState] = useAllFormFields()\n const { id, collectionSlug, globalSlug } = useDocumentInfo()\n\n /**\n * For client-side apps, send data through `window.postMessage`\n * The preview could either be an iframe embedded on the page\n * Or it could be a separate popup window\n * We need to transmit data to both accordingly\n */\n useEffect(() => {\n if (!isLivePreviewing || !appIsReady) {\n return\n }\n\n // For performance, do not reduce fields to values until after the iframe or popup has loaded\n if (formState) {\n const values = reduceFieldsToValues(formState, true)\n\n if (!values.id) {\n values.id = id\n }\n\n const message = {\n type: 'payload-live-preview',\n collectionSlug,\n data: values,\n externallyUpdatedRelationship: mostRecentUpdate,\n globalSlug,\n locale: locale.code,\n }\n\n // Post message to external popup window\n if (previewWindowType === 'popup' && popupRef.current) {\n popupRef.current.postMessage(message, url)\n }\n\n // Post message to embedded iframe\n if (previewWindowType === 'iframe' && iframeRef.current) {\n iframeRef.current.contentWindow?.postMessage(message, url)\n }\n }\n }, [\n formState,\n url,\n collectionSlug,\n globalSlug,\n id,\n previewWindowType,\n popupRef,\n appIsReady,\n iframeRef,\n mostRecentUpdate,\n locale,\n isLivePreviewing,\n loadedURL,\n ])\n\n /**\n * To support SSR, we transmit a `window.postMessage` event without a payload\n * This is because the event will ultimately trigger a server-side roundtrip\n * i.e., save, save draft, autosave, etc. will fire `router.refresh()`\n */\n useEffect(() => {\n if (!isLivePreviewing || !appIsReady) {\n return\n }\n\n const message = {\n type: 'payload-document-event',\n }\n\n // Post message to external popup window\n if (previewWindowType === 'popup' && popupRef.current) {\n popupRef.current.postMessage(message, url)\n }\n\n // Post message to embedded iframe\n if (previewWindowType === 'iframe' && iframeRef.current) {\n iframeRef.current.contentWindow?.postMessage(message, url)\n }\n }, [mostRecentUpdate, iframeRef, popupRef, previewWindowType, url, isLivePreviewing, appIsReady])\n\n if (previewWindowType !== 'iframe') {\n return null\n }\n\n return (\n <div\n className={[\n baseClass,\n isLivePreviewing && `${baseClass}--is-live-previewing`,\n breakpoint && breakpoint !== 'responsive' && `${baseClass}--has-breakpoint`,\n ]\n .filter(Boolean)\n .join(' ')}\n >\n <div className={`${baseClass}__wrapper`}>\n <LivePreviewToolbar {...props} />\n <div className={`${baseClass}__main`}>\n <DeviceContainer>{url ? <IFrame /> : <ShimmerEffect height=\"100%\" />}</DeviceContainer>\n </div>\n </div>\n </div>\n )\n}\n"],"mappings":"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","ignoreList":[]} |