diff --git a/src/react-utils/react-node-view.tsx b/src/react-utils/react-node-view.tsx index c310b112..ae03ac27 100644 --- a/src/react-utils/react-node-view.tsx +++ b/src/react-utils/react-node-view.tsx @@ -1,6 +1,6 @@ import React from 'react'; -import type {Node} from 'prosemirror-model'; +import type {Mark, Node} from 'prosemirror-model'; import type {EditorView, NodeView, NodeViewConstructor} from 'prosemirror-view'; import {createPortal} from 'react-dom'; @@ -17,7 +17,7 @@ export const ReactNodeStopEventCn = 'prosemirror-stop-event'; export type ReactNodeViewProps = { dom: HTMLElement; view: EditorView; - updateAttributes: (attrs: object) => void; + updateAttributes: (attrs: object, marks?: Mark[]) => void; node: Node; getPos: () => number | undefined; serializer: Serializer; @@ -94,7 +94,7 @@ export class ReactNodeView implements NodeView { return true; } - updateAttributes(attributes: {}) { + updateAttributes(attributes: {}, marks: Mark[] = []) { const pos = this.getPos(); if (pos === undefined) return; @@ -102,7 +102,7 @@ export class ReactNodeView implements NodeView { tr.setNodeMarkup(pos, undefined, { ...this.node.attrs, ...attributes, - }); + }, marks); this.view.dispatch(tr); }