mirror of
https://github.com/rzmk/learnhouse.git
synced 2025-12-19 04:19:25 +00:00
39 lines
740 B
TypeScript
39 lines
740 B
TypeScript
import { ReactNodeViewRenderer } from "@tiptap/react";
|
|
import { mergeAttributes, Node } from "@tiptap/core";
|
|
import BadgesExtension from "@/components/Objects/Editor/Extensions/Badges/BadgesExtension";
|
|
|
|
export default Node.create({
|
|
name: "badge",
|
|
group: "block",
|
|
draggable: true,
|
|
content: "text*",
|
|
|
|
// TODO : multi line support
|
|
|
|
addAttributes() {
|
|
return {
|
|
color: {
|
|
default: 'sky',
|
|
},
|
|
emoji: {
|
|
default: '💡',
|
|
},
|
|
};
|
|
},
|
|
|
|
parseHTML() {
|
|
return [
|
|
{
|
|
tag: "badge",
|
|
},
|
|
];
|
|
},
|
|
|
|
renderHTML({ HTMLAttributes }) {
|
|
return ["badge", mergeAttributes(HTMLAttributes), 0];
|
|
},
|
|
|
|
addNodeView() {
|
|
return ReactNodeViewRenderer(BadgesExtension);
|
|
},
|
|
});
|