Files
echo-nexus/node_modules/@lexical/react/LexicalOnChangePlugin.prod.mjs
T

10 lines
819 B
JavaScript

/**
* Copyright (c) Meta Platforms, Inc. and affiliates.
*
* This source code is licensed under the MIT license found in the
* LICENSE file in the root directory of this source tree.
*
*/
import{useLexicalComposerContext as e}from"@lexical/react/LexicalComposerContext";import{HISTORY_MERGE_TAG as t}from"lexical";import{useLayoutEffect as o,useEffect as i}from"react";const r="undefined"!=typeof window&&void 0!==window.document&&void 0!==window.document.createElement?o:i;function n({ignoreHistoryMergeTagChange:o=!0,ignoreSelectionChange:i=!1,onChange:n}){const[a]=e();return r((()=>{if(n)return a.registerUpdateListener((({editorState:e,dirtyElements:r,dirtyLeaves:d,prevEditorState:s,tags:c})=>{i&&0===r.size&&0===d.size||o&&c.has(t)||s.isEmpty()||n(e,a,c)}))}),[a,o,i,n]),null}export{n as OnChangePlugin};