]> BookStack Code Mirror - bookstack/blobdiff - resources/js/components/markdown-editor.js
Got md shortcuts working, marked actions for update
[bookstack] / resources / js / components / markdown-editor.js
index 4c3de91f68cafff30c947edb4085a4898109cf9d..922916701085851e7a90989cfd3676b45a93b599 100644 (file)
@@ -45,7 +45,8 @@ export class MarkdownEditor extends Component {
         window.$events.emitPublic(this.elem, 'editor-markdown::setup', {
             markdownIt: this.editor.markdown.getRenderer(),
             displayEl: this.display,
-            codeMirrorInstance: this.editor.cm,
+            // TODO - change to codeMirrorView?
+            // codeMirrorInstance: this.editor.cm,
         });
     }
 
@@ -57,7 +58,7 @@ export class MarkdownEditor extends Component {
             if (button === null) return;
 
             const action = button.getAttribute('data-action');
-            if (action === 'insertImage') this.editor.actions.insertImage();
+            if (action === 'insertImage') this.editor.actions.showImageInsert();
             if (action === 'insertLink') this.editor.actions.showLinkSelector();
             if (action === 'insertDrawing' && (event.ctrlKey || event.metaKey)) {
                 this.editor.actions.showImageManager();
@@ -81,9 +82,10 @@ export class MarkdownEditor extends Component {
         });
 
         // Refresh CodeMirror on container resize
-        const resizeDebounced = debounce(() => this.editor.cm.refresh(), 100, false);
-        const observer = new ResizeObserver(resizeDebounced);
-        observer.observe(this.elem);
+        // TODO
+        // const resizeDebounced = debounce(() => this.editor.cm.refresh(), 100, false);
+        // const observer = new ResizeObserver(resizeDebounced);
+        // observer.observe(this.elem);
 
         this.handleDividerDrag();
     }
@@ -102,7 +104,8 @@ export class MarkdownEditor extends Component {
                 window.removeEventListener('pointerup', upListener);
                 this.display.style.pointerEvents = null;
                 document.body.style.userSelect = null;
-                this.editor.cm.refresh();
+                // TODO
+                // this.editor.cm.refresh();
             };
 
             this.display.style.pointerEvents = 'none';
@@ -137,4 +140,13 @@ export class MarkdownEditor extends Component {
         return drawioAttrEl.getAttribute('drawio-url') || '';
     }
 
+    /**
+     * Get the content of this editor.
+     * Used by the parent page editor component.
+     * @return {{html: String, markdown: String}}
+     */
+    getContent() {
+        return this.editor.actions.getContent();
+    }
+
 }