import { useEditor, EditorContent } from '@tiptap/react' import StarterKit from '@tiptap/starter-kit' import { Toggle } from "@/components/ui/toggle" import { Bold, Italic, List, ListOrdered, Quote, Heading2, Code, } from "lucide-react" import { cn } from "@/lib/utils" const MenuBar = ({ editor }: { editor: any }) => { if (!editor) { return null } return (
editor.chain().focus().toggleBold().run()} > editor.chain().focus().toggleItalic().run()} > editor.chain().focus().toggleHeading({ level: 2 }).run()} > editor.chain().focus().toggleBulletList().run()} > editor.chain().focus().toggleOrderedList().run()} > editor.chain().focus().toggleBlockquote().run()} > editor.chain().focus().toggleCode().run()} >
) } interface RichTextEditorProps { content?: string onChange?: (content: string) => void className?: string } export function RichTextEditor({ content, onChange, className }: RichTextEditorProps) { const editor = useEditor({ extensions: [ StarterKit, ], content, onUpdate: ({ editor }) => { onChange?.(editor.getHTML()) }, }) return (
) }