diff --git a/packages/core/src/Editor.ts b/packages/core/src/Editor.ts index e99813e0..c71ffb5c 100644 --- a/packages/core/src/Editor.ts +++ b/packages/core/src/Editor.ts @@ -397,7 +397,7 @@ export class Editor extends EventEmitter { * Get the document as HTML. */ public getHTML(): string { - return getHTMLFromFragment(this.state.doc, this.schema) + return getHTMLFromFragment(this.state.doc.content, this.schema) } /** diff --git a/packages/core/src/helpers/generateHTML.ts b/packages/core/src/helpers/generateHTML.ts index 993ff7e7..75df2dec 100644 --- a/packages/core/src/helpers/generateHTML.ts +++ b/packages/core/src/helpers/generateHTML.ts @@ -7,5 +7,5 @@ export default function generateHTML(doc: JSONContent, extensions: Extensions): const schema = getSchema(extensions) const contentNode = Node.fromJSON(schema, doc) - return getHTMLFromFragment(contentNode, schema) + return getHTMLFromFragment(contentNode.content, schema) } diff --git a/packages/core/src/helpers/getHTMLFromFragment.ts b/packages/core/src/helpers/getHTMLFromFragment.ts index f2a6659d..547967c3 100644 --- a/packages/core/src/helpers/getHTMLFromFragment.ts +++ b/packages/core/src/helpers/getHTMLFromFragment.ts @@ -1,13 +1,13 @@ -import { Node, DOMSerializer, Schema } from 'prosemirror-model' +import { DOMSerializer, Schema, Fragment } from 'prosemirror-model' -export default function getHTMLFromFragment(doc: Node, schema: Schema): string { - const fragment = DOMSerializer +export default function getHTMLFromFragment(fragment: Fragment, schema: Schema): string { + const documentFragment = DOMSerializer .fromSchema(schema) - .serializeFragment(doc.content) + .serializeFragment(fragment) const temporaryDocument = document.implementation.createHTMLDocument() const container = temporaryDocument.createElement('div') - container.appendChild(fragment) + container.appendChild(documentFragment) return container.innerHTML }