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://

1 lines 3.91 kB
{"version":3,"file":"VisualEditingComponent.cjs","sources":["../../src/next-pages-router/VisualEditingComponent.tsx"],"sourcesContent":["import {useRouter} from 'next/router.js'\nimport {useEffect, useRef, useState} from 'react'\nimport type {HistoryAdapterNavigate, VisualEditingOptions} from '../types'\nimport {enableVisualEditing} from '../ui/enableVisualEditing'\n\n/**\n * @public\n */\nexport interface VisualEditingProps extends Omit<VisualEditingOptions, 'history'> {\n /**\n * @deprecated The history adapter is already implemented\n */\n history?: never\n}\n\nexport default function VisualEditingComponent(props: VisualEditingProps): null {\n const {components, refresh, zIndex} = props\n\n const router = useRouter()\n const routerRef = useRef(router)\n const [navigate, setNavigate] = useState<HistoryAdapterNavigate | undefined>()\n\n useEffect(() => {\n routerRef.current = router\n }, [router])\n useEffect(() => {\n const disable = enableVisualEditing({\n components,\n zIndex,\n refresh,\n history: {\n subscribe: (_navigate) => {\n setNavigate(() => _navigate)\n return () => setNavigate(undefined)\n },\n update: (update) => {\n switch (update.type) {\n case 'push':\n return routerRef.current.push(update.url)\n case 'pop':\n return routerRef.current.back()\n case 'replace':\n return routerRef.current.replace(update.url)\n default:\n throw new Error(`Unknown update type: ${update.type}`)\n }\n },\n },\n })\n return () => disable()\n }, [components, refresh, zIndex])\n\n const {asPath, basePath, locale, isReady} = useRouter()\n useEffect(() => {\n if (navigate && isReady) {\n const url =\n basePath || locale\n ? `${basePath}${locale ? `/${locale}` : ''}${asPath === '/' ? '' : asPath}`\n : asPath\n navigate({type: 'push', url})\n }\n }, [asPath, basePath, isReady, locale, navigate])\n\n return null\n}\n"],"names":["exports","default","props","$","_c","components","refresh","zIndex","router","useRouter","routerRef","useRef","navigate","setNavigate","useState","t0","t1","t2","t3","current","useEffect","disable","enableVisualEditing","history","subscribe","_navigate","undefined","update","type","push","url","back","replace","Error","asPath","basePath","locale","isReady","t4","t5"],"mappings":"2IA6DmDA,QAAAC,QA9CnD,SAAeC,GAAAC,MAAAA,EAAAC,IAAA,KACbC,WAAAA,EAAAA,QAAAC,EAAAA,OAAAC,GAAsCL,EAEtCM,EAAeC,EAAAA,YACfC,EAAkBC,EAAAA,OAAOH,IACzBI,EAAAC,GAAgCC,EAAAA,WAA8C,IAAAC,EAAAC,EAIlEC,EAAAC,EAJkEf,OAAAK,GAEpEO,EAAAA,KACRL,EAASS,QAAWX,CAAAA,EACnBQ,GAACR,GAAOL,KAAAK,EAAAL,KAAAY,EAAAZ,KAAAa,IAAAD,EAAAZ,EAAA,GAAAa,EAAAb,EAAA,IAFXiB,YAAUL,EAEPC,GAASb,EAAAE,KAAAA,GAAAF,OAAAG,GAAAH,EAAA,KAAAI,GACFU,EAAAA,KACRI,MAAAA,EAAgBC,EAAAA,EAAA,CAAAjB,aAAAE,SAAAD,UAAAiB,QAAA,CAAAC,cAMVX,GAAW,IAAOY,IACLZ,IAAAA,OAAWa,IAAWC,OAAAA,IAAA,OAG3BA,EAAMC,MAAA,IACP,OAAM,OACFlB,EAASS,QAAAU,KAAcF,EAAMG,KAAK,IACtC,MACIpB,OAAAA,EAASS,QAAAY,OAAe,IAC5B,UAAS,OACLrB,EAASS,QAAAa,QAAiBL,EAAMG,KAAK,QAAA,MAAA,IAAAG,MAE5B,wBAAwBN,EAAMC,QAAO,KAI7D,MACWP,IAAAA,GAAQ,EACpBH,EAACb,CAAAA,EAAYC,EAASC,GAAOJ,KAAAE,EAAAF,KAAAG,EAAAH,KAAAI,EAAAJ,KAAAc,EAAAd,KAAAe,IAAAD,EAAAd,EAAA,GAAAe,EAAAf,EAAA,IAzBhCiB,EAAAA,UAAUH,EAyBPC,GAEH,MAAAgB,OAAAA,EAAAA,SAAAC,EAAAA,OAAAC,EAAAA,QAAAC,GAA4C5B,cAAW,IAAA6B,EAAAC,EAAApC,OAAAA,EAAA+B,KAAAA,GAAA/B,EAAA,KAAAgC,GAAAhC,EAAAkC,MAAAA,GAAAlC,EAAA,MAAAiC,GAAAjC,QAAAS,GAC7C0B,EAAAA,KAAA,GACJ1B,GAAYyB,EAAO,CAKbzB,EAAA,CAAAgB,KAAQ,OAAME,IAHpBK,GAAYC,EACR,GAAGD,IAAWC,EAAS,IAAIA,IAAW,KAAgB,MAAXF,EAAiB,GAAKA,IACjEA,GACsB,GAE7BK,EAAA,CAACL,EAAQC,EAAUE,EAASD,EAAQxB,GAAST,KAAA+B,EAAA/B,KAAAgC,EAAAhC,MAAAkC,EAAAlC,MAAAiC,EAAAjC,MAAAS,EAAAT,MAAAmC,EAAAnC,MAAAoC,IAAAD,EAAAnC,EAAA,IAAAoC,EAAApC,EAAA,KARhDiB,YAAUkB,EAQPC,GAA8C,IAAA"}