- // TODO - Switching
- // const codeMirror = initCodemirror(editor, Code);
- // editor.input = new CodemirrorInput(codeMirror);
- editor.input = new TextareaInput(
- config.inputEl,
- provideShortcutMap(editor),
- eventHandlers
- );
+ const shortcuts = provideShortcutMap(editor);
+ const onInputChange = () => editor.actions.updateAndRender();
+
+ const initCodemirrorInput: () => Promise<MarkdownEditorInput> = async () => {
+ const codeMirror = await initCodemirror(config.inputEl, shortcuts, eventHandlers, onInputChange);
+ return new CodemirrorInput(codeMirror);
+ };
+ const initTextAreaInput: () => Promise<MarkdownEditorInput> = async () => {
+ return new TextareaInput(config.inputEl, shortcuts, eventHandlers, onInputChange);
+ };