UNPKG

@terrible-lexical/react

Version:

This package provides Lexical components and hooks for React applications.

29 lines (24 loc) 820 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 type {HistoryState} from '@terrible-lexical/history/src'; import type {LexicalEditor} from 'terrible-lexical'; import {createEmptyHistoryState, registerHistory} from '@terrible-lexical/history/src'; import {useEffect, useMemo} from 'react'; export function useHistory( editor: LexicalEditor, externalHistoryState?: HistoryState, delay = 1000, ): void { const historyState: HistoryState = useMemo( () => externalHistoryState || createEmptyHistoryState(), [externalHistoryState], ); useEffect(() => { return registerHistory(editor, historyState, delay); }, [delay, editor, historyState]); }