UNPKG

@lexical/react

Version:

This package provides Lexical components and hooks for React applications.

10 lines (8 loc) 963 B
/** * 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 r}from"@lexical/react/LexicalComposerContext";import{$isScrollableTablesActive as o,setScrollableTablesActive as e,TableNode as l,registerTablePlugin as t,registerTableSelectionObserver as a,registerTableCellUnmergeTransform as n,TableCellNode as i}from"@lexical/table";import{useEffect as c}from"react";function s({hasCellMerge:s=!0,hasCellBackgroundColor:u=!0,hasTabHandler:m=!0,hasHorizontalScroll:f=!1}){const[g]=r();return c((()=>{o(g)!==f&&(e(g,f),g.registerNodeTransform(l,(()=>{}))())}),[g,f]),c((()=>t(g)),[g]),c((()=>a(g,m)),[g,m]),c((()=>{if(!s)return n(g)}),[g,s]),c((()=>{if(!u)return g.registerNodeTransform(i,(r=>{null!==r.getBackgroundColor()&&r.setBackgroundColor(null)}))}),[g,u,s]),null}export{s as TablePlugin};