mirror of
https://github.com/rzmk/learnhouse.git
synced 2025-12-19 04:19:25 +00:00
46 lines
886 B
TypeScript
46 lines
886 B
TypeScript
import { ReactNodeViewRenderer } from "@tiptap/react";
|
|
import { mergeAttributes, Node } from "@tiptap/core";
|
|
import FlipcardExtension from "./FlipcardExtension";
|
|
|
|
export default Node.create({
|
|
name: "flipcard",
|
|
group: "block",
|
|
draggable: true,
|
|
content: "text*",
|
|
|
|
addAttributes() {
|
|
return {
|
|
question: {
|
|
default: 'Click to reveal the answer',
|
|
},
|
|
answer: {
|
|
default: 'This is the answer',
|
|
},
|
|
color: {
|
|
default: 'blue',
|
|
},
|
|
alignment: {
|
|
default: 'center',
|
|
},
|
|
size: {
|
|
default: 'medium',
|
|
},
|
|
};
|
|
},
|
|
|
|
parseHTML() {
|
|
return [
|
|
{
|
|
tag: "flipcard-block",
|
|
},
|
|
];
|
|
},
|
|
|
|
renderHTML({ HTMLAttributes }) {
|
|
return ["flipcard-block", mergeAttributes(HTMLAttributes), 0];
|
|
},
|
|
|
|
addNodeView() {
|
|
return ReactNodeViewRenderer(FlipcardExtension);
|
|
},
|
|
});
|