]> BookStack Code Mirror - bookstack/blobdiff - resources/js/editor/ProseMirrorView.js
Added source code view/set button
[bookstack] / resources / js / editor / ProseMirrorView.js
index 63a47dc35b09f07b3e78c0b3cb49df30a996f984..cc979ffb3f6e55c52d9d6cc508f6bee6a4daea68 100644 (file)
@@ -2,11 +2,12 @@ import {EditorState} from "prosemirror-state";
 import {EditorView} from "prosemirror-view";
 import {exampleSetup} from "prosemirror-example-setup";
 
-import {DOMParser, DOMSerializer} from "prosemirror-model";
+import {DOMParser} from "prosemirror-model";
 
 import schema from "./schema";
 import menu from "./menu";
 import nodeViews from "./node-views";
+import {stateToHtml} from "./util";
 
 class ProseMirrorView {
     constructor(target, content) {
@@ -28,13 +29,16 @@ class ProseMirrorView {
     }
 
     get content() {
-        const fragment = DOMSerializer.fromSchema(schema).serializeFragment(this.view.state.doc.content);
-        const renderDoc = document.implementation.createHTMLDocument();
-        renderDoc.body.appendChild(fragment);
-        return renderDoc.body.innerHTML;
+        return stateToHtml(this.view.state);
+    }
+
+    focus() {
+        this.view.focus()
+    }
+
+    destroy() {
+        this.view.destroy()
     }
-    focus() { this.view.focus() }
-    destroy() { this.view.destroy() }
 }
 
 export default ProseMirrorView;
\ No newline at end of file