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

37 lines (28 loc) 713 B
import {useEffect, type FunctionComponent} from 'react' import type {VisualEditingNode} from '../types' /** * @internal */ export const Meta: FunctionComponent<{ comlink: VisualEditingNode }> = (props) => { const {comlink} = props useEffect(() => { const sendMeta = () => { comlink.post('visual-editing/meta', {title: document.title}) } const observer = new MutationObserver(([mutation]) => { if (mutation.target.nodeName === 'TITLE') { sendMeta() } }) observer.observe(document.head, { subtree: true, characterData: true, childList: true, }) sendMeta() return () => observer.disconnect() }, [comlink]) return null }