@lexical/react
Version:
This package provides Lexical components and hooks for React applications.
10 lines (8 loc) • 969 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.
*
*/
;var e=require("@lexical/react/LexicalComposerContext"),r=require("@lexical/table"),l=require("react");exports.TablePlugin=function({hasCellMerge:t=!0,hasCellBackgroundColor:a=!0,hasTabHandler:o=!0,hasHorizontalScroll:s=!1}){const[c]=e.useLexicalComposerContext();return l.useEffect((()=>{r.$isScrollableTablesActive(c)!==s&&(r.setScrollableTablesActive(c,s),c.registerNodeTransform(r.TableNode,(()=>{}))())}),[c,s]),l.useEffect((()=>r.registerTablePlugin(c)),[c]),l.useEffect((()=>r.registerTableSelectionObserver(c,o)),[c,o]),l.useEffect((()=>{if(!t)return r.registerTableCellUnmergeTransform(c)}),[c,t]),l.useEffect((()=>{if(!a)return c.registerNodeTransform(r.TableCellNode,(e=>{null!==e.getBackgroundColor()&&e.setBackgroundColor(null)}))}),[c,a,t]),null};