Quellcode durchsuchen

not use CodeMirrorEditor

Shun Miyazawa vor 2 Jahren
Ursprung
Commit
6c664e6256

+ 5 - 12
packages/editor/src/components/CodeMirrorEditor/CodeMirrorEditor.tsx

@@ -33,7 +33,6 @@ export type CodeMirrorEditorProps = {
   acceptedUploadFileType?: AcceptedUploadFileType,
   acceptedUploadFileType?: AcceptedUploadFileType,
   indentSize?: number,
   indentSize?: number,
   editorSettings?: EditorSettings,
   editorSettings?: EditorSettings,
-  hideToolbar?: boolean,
   onChange?: (value: string) => void,
   onChange?: (value: string) => void,
   onSave?: () => void,
   onSave?: () => void,
   onUpload?: (files: File[]) => void,
   onUpload?: (files: File[]) => void,
@@ -50,7 +49,6 @@ export const CodeMirrorEditor = (props: Props): JSX.Element => {
     acceptedUploadFileType = AcceptedUploadFileType.NONE,
     acceptedUploadFileType = AcceptedUploadFileType.NONE,
     indentSize,
     indentSize,
     editorSettings,
     editorSettings,
-    hideToolbar,
     onChange,
     onChange,
     onSave,
     onSave,
     onUpload,
     onUpload,
@@ -211,16 +209,11 @@ export const CodeMirrorEditor = (props: Props): JSX.Element => {
         <FileDropzoneOverlay isEnabled={isDragActive} />
         <FileDropzoneOverlay isEnabled={isDragActive} />
         <CodeMirrorEditorContainer ref={containerRef} />
         <CodeMirrorEditorContainer ref={containerRef} />
       </div>
       </div>
-
-      {
-        !hideToolbar && (
-          <Toolbar
-            editorKey={editorKey}
-            acceptedUploadFileType={acceptedUploadFileType}
-            onUpload={onUpload}
-          />
-        )
-      }
+      <Toolbar
+        editorKey={editorKey}
+        acceptedUploadFileType={acceptedUploadFileType}
+        onUpload={onUpload}
+      />
     </div>
     </div>
   );
   );
 };
 };

+ 14 - 9
packages/editor/src/components/CodeMirrorEditorDiff.tsx

@@ -1,12 +1,11 @@
-import { useEffect } from 'react';
+import { useEffect, useRef, useMemo } from 'react';
 
 
 import type { Extension } from '@codemirror/state';
 import type { Extension } from '@codemirror/state';
 import { placeholder, scrollPastEnd } from '@codemirror/view';
 import { placeholder, scrollPastEnd } from '@codemirror/view';
+import type { ReactCodeMirrorProps } from '@uiw/react-codemirror';
 
 
 import { GlobalCodeMirrorEditorKey } from '../consts';
 import { GlobalCodeMirrorEditorKey } from '../consts';
-import { useCodeMirrorEditorIsolated } from '../stores';
-
-import { CodeMirrorEditor } from '.';
+import { useCodeMirrorEditorIsolated, useDefaultExtensions, useEditorSettings } from '../stores';
 
 
 const additionalExtensions: Extension[] = [
 const additionalExtensions: Extension[] = [
   [
   [
@@ -17,7 +16,16 @@ const additionalExtensions: Extension[] = [
 ];
 ];
 
 
 export const CodeMirrorEditorDiff = (): JSX.Element => {
 export const CodeMirrorEditorDiff = (): JSX.Element => {
-  const { data: codeMirrorEditor } = useCodeMirrorEditorIsolated(GlobalCodeMirrorEditorKey.DIFF);
+  const codeMirrorRef = useRef(null);
+
+  const cmProps = useMemo<ReactCodeMirrorProps>(() => {
+    return {};
+  }, []);
+
+  const { data: codeMirrorEditor } = useCodeMirrorEditorIsolated(GlobalCodeMirrorEditorKey.DIFF, codeMirrorRef.current, cmProps);
+
+  useDefaultExtensions(codeMirrorEditor);
+  useEditorSettings(codeMirrorEditor);
 
 
   // setup additional extensions
   // setup additional extensions
   useEffect(() => {
   useEffect(() => {
@@ -25,9 +33,6 @@ export const CodeMirrorEditorDiff = (): JSX.Element => {
   }, [codeMirrorEditor]);
   }, [codeMirrorEditor]);
 
 
   return (
   return (
-    <CodeMirrorEditor
-      editorKey={GlobalCodeMirrorEditorKey.DIFF}
-      hideToolbar
-    />
+    <div ref={codeMirrorRef} />
   );
   );
 };
 };