diff --git a/src/components/Editor.tsx b/src/components/Editor.tsx index 2de1f70..1203016 100644 --- a/src/components/Editor.tsx +++ b/src/components/Editor.tsx @@ -1,5 +1,5 @@ import { EditorContent, Editor as TiptapEditor } from "@tiptap/react"; -import { lazy, Suspense, useEffect } from "react"; +import { lazy, Suspense, useEffect, useMemo } from "react"; import { loadExtensions } from "@/lib/extensions"; import { LoaderCircle } from "lucide-react"; import { useDoc } from "@/hooks/use-doc"; @@ -17,19 +17,23 @@ const Loading = () => { }; const EditorView = ({ doc }: { doc: Y.Doc }) => { - const editor = new TiptapEditor({ - extensions: [...loadExtensions(doc)], - editorProps: { - attributes: { - class: - "!w-full prose !max-w-none dark:prose-invert prose-md leading-tight focus:outline-none min-h-[90vh]", - }, - }, - }); + const editor = useMemo( + () => + new TiptapEditor({ + extensions: [...loadExtensions(doc)], + editorProps: { + attributes: { + class: + "!w-full prose !max-w-none dark:prose-invert prose-md leading-tight focus:outline-none min-h-[90vh]", + }, + }, + }), + [doc] + ); useEffect(() => { if (!editor.isFocused) { - editor.commands.focus('end'); + editor.commands.focus("end"); } }, [editor]); diff --git a/src/tailwind.css b/src/tailwind.css index 4056645..b3f5624 100644 --- a/src/tailwind.css +++ b/src/tailwind.css @@ -65,13 +65,6 @@ /* Basic editor styles */ .tiptap { - p.is-editor-empty:first-child::before { - @apply text-foreground/50; - content: attr(data-placeholder); - float: left; - height: 0; - pointer-events: none; - } /* disable margin-bottom for paragraph elements under li */ li > p {