import React from "react"; import { NoteRead } from "../../api/folders"; import { useNoteStore } from "../../stores/notesStore"; import { notesApi } from "../../api/notes"; interface NoteContextMenuProps { x: number; y: number; note: NoteRead; onClose: () => void; } export const NoteContextMenu: React.FC = ({ x, y, note, onClose, }) => { const { loadFolderTree, setSelectedNote } = useNoteStore(); const handleDelete = async () => { try { await notesApi.delete(note.id); await loadFolderTree(); onClose(); } catch (error) { console.error("Failed to delete note:", error); } }; const handleDuplicate = async () => { try { await notesApi.create({ title: `${note.title} (Copy)`, content: note.content, folder_id: note.folder_id, }); await loadFolderTree(); onClose(); } catch (error) { console.error("Failed to duplicate note:", error); } }; const handleRename = () => { setSelectedNote(note); onClose(); // Focus will be handled by the editor }; return (
e.stopPropagation()} >
); };