From 43a18c0123efed3ef23cb0cf912b6a7fe1443934 Mon Sep 17 00:00:00 2001 From: Antigravity Date: Sat, 9 May 2026 21:29:11 +0000 Subject: [PATCH] feat: add 'new sub-notebook' option in note move dropdown --- memento-note/components/note-card.tsx | 12 ++++++++++-- 1 file changed, 10 insertions(+), 2 deletions(-) diff --git a/memento-note/components/note-card.tsx b/memento-note/components/note-card.tsx index f38be31..4b17971 100644 --- a/memento-note/components/note-card.tsx +++ b/memento-note/components/note-card.tsx @@ -12,6 +12,7 @@ import { DropdownMenuSub, DropdownMenuSubContent, DropdownMenuSubTrigger, + DropdownMenuSeparator, } from '@/components/ui/dropdown-menu' import { AlertDialog, @@ -23,7 +24,7 @@ import { AlertDialogHeader, AlertDialogTitle, } from '@/components/ui/alert-dialog' -import { Pin, Bell, GripVertical, X, Link2, FolderOpen, StickyNote, LucideIcon, Folder, Briefcase, FileText, Zap, BarChart3, Globe, Sparkles, Book, Heart, Crown, Music, Building2, LogOut, Trash2, AlignLeft, FileCode2, PenLine, ListChecks, ChevronRight } from 'lucide-react' +import { Pin, Bell, GripVertical, X, Link2, FolderOpen, StickyNote, LucideIcon, Folder, Briefcase, FileText, Zap, BarChart3, Globe, Sparkles, Book, Heart, Crown, Music, Building2, LogOut, Trash2, AlignLeft, FileCode2, PenLine, ListChecks, ChevronRight, Plus } from 'lucide-react' import { useState, useEffect, useTransition, useOptimistic, memo, useMemo } from 'react' import dynamic from 'next/dynamic' import { useSession } from 'next-auth/react' @@ -118,7 +119,7 @@ function getNotebookIcon(iconName: string): LucideIcon { return IconComponent } -interface NoteCardProps { + interface NoteCardProps { note: Note onEdit?: (note: Note, readOnly?: boolean) => void isDragging?: boolean @@ -130,6 +131,7 @@ interface NoteCardProps { isTrashView?: boolean noteHistoryEnabled?: boolean onOpenHistory?: (note: Note) => void + onCreateSubNotebook?: () => void } // Helper function to get initials from name @@ -171,6 +173,7 @@ export const NoteCard = memo(function NoteCard({ isTrashView, noteHistoryEnabled = false, onOpenHistory, + onCreateSubNotebook, }: NoteCardProps) { const router = useRouter() const searchParams = useSearchParams() @@ -543,6 +546,11 @@ export const NoteCard = memo(function NoteCard({ ) })} + + onCreateSubNotebook?.()}> + + {t('notebook.createSubNotebook') || 'Nouveau sous-carnet…'} + }