UNPKG

@sanity/visual-editing

Version:

[![npm stat](https://img.shields.io/npm/dm/@sanity/visual-editing.svg?style=flat-square)](https://npm-stat.com/charts.html?package=@sanity/visual-editing) [![npm version](https://img.shields.io/npm/v/@sanity/visual-editing.svg?style=flat-square)](https://

88 lines (87 loc) 3.35 kB
import { c } from "react/compiler-runtime"; import { useRouter } from "next/router.js"; import { useState, useEffectEvent, useEffect } from "react"; import { enableVisualEditing } from "./enableVisualEditing.js"; function VisualEditingComponent(props) { const $ = c(22), { components, refresh: refreshProp, zIndex, onPerspectiveChange } = props, router = useRouter(), [navigate, setNavigate] = useState(); let t0; $[0] !== refreshProp || $[1] !== router ? (t0 = (payload) => { if (refreshProp) return refreshProp(payload); const routerRefresh = async function() { await router.replace(router.asPath, void 0, { scroll: !1, shallow: !1 }); }, skipRefresh = _temp, mutationRefresh = () => (console.debug("No loaders in live mode detected, reloading server props"), routerRefresh()); switch (payload.source) { case "manual": return routerRefresh(); case "mutation": return payload.livePreviewEnabled ? skipRefresh() : mutationRefresh(); default: throw new Error("Unknown refresh source", { cause: payload }); } }, $[0] = refreshProp, $[1] = router, $[2] = t0) : t0 = $[2]; const refresh = useEffectEvent(t0); let t1; $[3] !== router ? (t1 = (event) => { switch (event.type) { case "push": return router.push(event.url); case "pop": return router.back(); case "replace": return router.replace(event.url); default: throw new Error(`Unknown event type: ${event.type}`); } }, $[3] = router, $[4] = t1) : t1 = $[4]; const update = useEffectEvent(t1); let t2; $[5] !== components || $[6] !== onPerspectiveChange || $[7] !== refresh || $[8] !== update || $[9] !== zIndex ? (t2 = () => { const disable = enableVisualEditing({ components, zIndex, refresh, onPerspectiveChange, history: { subscribe: (_navigate) => (setNavigate(() => _navigate), () => setNavigate(void 0)), update } }); return () => disable(); }, $[5] = components, $[6] = onPerspectiveChange, $[7] = refresh, $[8] = update, $[9] = zIndex, $[10] = t2) : t2 = $[10]; let t3; $[11] !== components || $[12] !== onPerspectiveChange || $[13] !== zIndex ? (t3 = [components, zIndex, onPerspectiveChange], $[11] = components, $[12] = onPerspectiveChange, $[13] = zIndex, $[14] = t3) : t3 = $[14], useEffect(t2, t3); const { asPath, basePath, locale, isReady } = useRouter(); let t4, t5; return $[15] !== asPath || $[16] !== basePath || $[17] !== isReady || $[18] !== locale || $[19] !== navigate ? (t4 = () => { if (navigate && isReady) { const url = basePath || locale ? `${basePath}${locale ? `/${locale}` : ""}${asPath === "/" ? "" : asPath}` : asPath; navigate({ type: "push", url }); } }, t5 = [asPath, basePath, isReady, locale, navigate], $[15] = asPath, $[16] = basePath, $[17] = isReady, $[18] = locale, $[19] = navigate, $[20] = t4, $[21] = t5) : (t4 = $[20], t5 = $[21]), useEffect(t4, t5), null; } function _temp() { return console.debug("Live preview is setup, mutation is skipped assuming its handled by the live preview"), !1; } export { VisualEditingComponent as default }; //# sourceMappingURL=VisualEditingComponent.js.map