/* eslint-disable react/no-multi-comp */ import React, { useRef, useState, useEffect, ReactElement } from 'react'; import Editor, { createEditorStateWithText } from '@draft-js-plugins/editor'; import createToolbarPlugin, { Separator, } from '@draft-js-plugins/static-toolbar'; import { ItalicButton, BoldButton, UnderlineButton, CodeButton, HeadlineOneButton, HeadlineTwoButton, HeadlineThreeButton, UnorderedListButton, OrderedListButton, BlockquoteButton, CodeBlockButton, SubButton, SupButton, } from '@draft-js-plugins/buttons'; import editorStyles from './editorStyles.css'; const HeadlinesPicker = (props): ReactElement => { const onWindowClick = (): void => // Call `onOverrideContent` again with `undefined` // so the toolbar can show its regular content again. props.onOverrideContent(undefined); useEffect(() => { const timeout = setTimeout(() => { window.addEventListener('click', onWindowClick); }); return () => { if (timeout) { clearTimeout(timeout); } window.removeEventListener('click', onWindowClick); }; }, []); const buttons = [HeadlineOneButton, HeadlineTwoButton, HeadlineThreeButton]; return (