tiptap/examples/Components/Routes/TextAlign/Paragraph.js

35 lines
585 B
JavaScript
Raw Normal View History

2018-09-27 15:17:11 +08:00
import { setBlockType } from 'tiptap-commands'
import { Node } from 'tiptap'
export default class ParagraphNode extends Node {
get name() {
return 'paragraph'
}
get schema() {
return {
attrs: {
textAlign: {
default: 'left',
},
},
content: 'inline*',
group: 'block',
draggable: false,
parseDOM: [{
tag: 'p',
getAttrs: node => ({
textAlign: node.style.textAlign,
}),
}],
toDOM: node => ['p', { style: `text-align: ${node.attrs.textAlign}` }, 0],
}
}
command({ type, attrs }) {
return setBlockType(type, attrs)
}
}