Seigwai/src/components/Tiptap/DraggableItem.js

34 lines
608 B
JavaScript

import { Node, mergeAttributes } from '@tiptap/core'
import { VueNodeViewRenderer } from '@tiptap/vue-3'
import DragableHandle from './DragableHandle.vue'
export default Node.create({
name: 'draggableItem',
group: 'block',
content: 'block+',
draggable: true,
parseHTML() {
return [
{
tag: 'div[data-type="draggable-item"]',
},
]
},
renderHTML({ HTMLAttributes }) {
return [
'div',
mergeAttributes(HTMLAttributes, { 'data-type': 'draggable-item' }),
0,
]
},
addNodeView() {
return VueNodeViewRenderer(DragableHandle)
},
})