diff --git a/wax-prosemirror-schema/src/nodes/epigraphPoetryNode.js b/wax-prosemirror-schema/src/nodes/epigraphPoetryNode.js index dd5fbc567bb5aca87ed4db50420a1cc898f40e1c..088ee7e96595eff8efb18ad8bc2b4b22dff0bc4e 100644 --- a/wax-prosemirror-schema/src/nodes/epigraphPoetryNode.js +++ b/wax-prosemirror-schema/src/nodes/epigraphPoetryNode.js @@ -1,27 +1,24 @@ -import { parseTracks, blockLevelToDOM } from "./helpers"; const epigraphPoetry = { content: "inline*", group: "block", priority: 0, defining: true, attrs: { - class: { default: "epigraph-poetry" }, - track: { default: [] } + class: { default: "epigraph-poetry" } }, parseDOM: [ { tag: "p.epigraph-poetry", getAttrs(hook, next) { Object.assign(hook, { - class: hook.dom.getAttribute("class"), - track: parseTracks(hook.dom.dataset.track) + class: hook.dom.getAttribute("class") }); next(); } } ], toDOM(hook, next) { - const attrs = blockLevelToDOM(hook.node); + const attrs = { class: hook.node.attrs.class }; hook.value = ["p", attrs, 0]; next(); } diff --git a/wax-prosemirror-schema/src/nodes/trackChangesNodes/epigraphPoetryTrackNode.js b/wax-prosemirror-schema/src/nodes/trackChangesNodes/epigraphPoetryTrackNode.js index e69de29bb2d1d6434b8b29ae775ad8c2e48c5391..bf4c4b831108a7506f5dde9871a077b75430bcff 100644 --- a/wax-prosemirror-schema/src/nodes/trackChangesNodes/epigraphPoetryTrackNode.js +++ b/wax-prosemirror-schema/src/nodes/trackChangesNodes/epigraphPoetryTrackNode.js @@ -0,0 +1,29 @@ +import { parseTracks } from "../helpers"; +const epigraphPoetry = { + content: "inline*", + group: "block", + priority: 0, + defining: true, + attrs: { + track: { default: [] } + }, + parseDOM: [ + { + tag: "p.epigraph-poetry", + getAttrs(hook, next) { + Object.assign(hook, { + track: parseTracks(hook.dom.dataset.track) + }); + next(); + } + } + ], + toDOM(hook, next) { + Object.assign(hook.value[1], { + "data-track": JSON.stringify(hook.node.attrs.track) + }); + next(); + } +}; + +export default epigraphPoetry;