mirror of
https://github.com/ueberdosis/tiptap.git
synced 2024-12-16 03:39:00 +08:00
35 lines
585 B
JavaScript
35 lines
585 B
JavaScript
|
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)
|
||
|
}
|
||
|
|
||
|
}
|