"use client"; import { useRef, useState } from "react"; import { Note } from "../types"; import Toolbar from "./Toolbar"; import MarkdownPreview from "./MarkdownPreview"; import { Pencil, Eye, Columns2 } from "lucide-react"; type ViewMode = "edit" | "preview" | "split"; interface EditorProps { note: Note; onUpdateNote: (id: string, updates: Partial) => void; } export default function Editor({ note, onUpdateNote }: EditorProps) { const textareaRef = useRef(null); const [viewMode, setViewMode] = useState("split"); const [title, setTitle] = useState(note.title); const [content, setContent] = useState(note.content); const handleTitleChange = (newTitle: string) => { setTitle(newTitle); onUpdateNote(note.id, { title: newTitle }); }; const handleContentChange = (newContent: string) => { setContent(newContent); onUpdateNote(note.id, { content: newContent }); }; return (
handleTitleChange(e.target.value)} placeholder="Titre de la note..." />
{(viewMode === "edit" || viewMode === "split") && ( )}
{(viewMode === "edit" || viewMode === "split") && (