From dd99aa7fcd54feefddf23b9dd5fd3c930e0d4a9e Mon Sep 17 00:00:00 2001 From: Gregory Schier Date: Fri, 31 Mar 2023 23:19:15 -0700 Subject: [PATCH] Memo editor --- src-web/components/core/Editor/Editor.tsx | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/src-web/components/core/Editor/Editor.tsx b/src-web/components/core/Editor/Editor.tsx index d2736d76..86a73d13 100644 --- a/src-web/components/core/Editor/Editor.tsx +++ b/src-web/components/core/Editor/Editor.tsx @@ -5,7 +5,7 @@ import { keymap, placeholder as placeholderExt, tooltips } from '@codemirror/vie import classnames from 'classnames'; import { EditorView } from 'codemirror'; import type { MutableRefObject } from 'react'; -import { forwardRef, useCallback, useEffect, useImperativeHandle, useRef } from 'react'; +import { forwardRef, memo, useCallback, useEffect, useImperativeHandle, useRef } from 'react'; import { IconButton } from '../IconButton'; import './Editor.css'; import { baseExtensions, getLanguageExtension, multiLineExtensions } from './extensions'; @@ -37,7 +37,7 @@ export interface EditorProps { autocomplete?: GenericCompletionConfig; } -export const Editor = forwardRef(function Editor( +const _Editor = forwardRef(function Editor( { readOnly, type = 'text', @@ -177,6 +177,8 @@ export const Editor = forwardRef(function E ); }); +export const Editor = memo(_Editor); + function getExtensions({ container, readOnly,