'use client'; import { Modal } from './Modal'; import { cn } from '@/lib/utils'; interface KeyboardShortcut { keys: string[]; description: string; category?: string; } interface KeyboardShortcutsModalProps { isOpen: boolean; onClose: () => void; shortcuts: KeyboardShortcut[]; title?: string; } function KeyBadge({ keyText }: { keyText: string }) { return ( {keyText} ); } function ShortcutRow({ shortcut }: { shortcut: KeyboardShortcut }) { return (
{shortcut.keys.map((key, index) => (
{index < shortcut.keys.length - 1 && ( + )}
))}
{shortcut.description}
); } export function KeyboardShortcutsModal({ isOpen, onClose, shortcuts, title = "Raccourcis clavier" }: KeyboardShortcutsModalProps) { // Grouper les raccourcis par catégorie const groupedShortcuts = shortcuts.reduce((acc, shortcut) => { const category = shortcut.category || 'Général'; if (!acc[category]) { acc[category] = []; } acc[category].push(shortcut); return acc; }, {} as Record); return (
{Object.entries(groupedShortcuts).map(([category, categoryShortcuts]) => (

{category}

{categoryShortcuts.map((shortcut, index) => ( ))}
))} {shortcuts.length === 0 && (

Aucun raccourci disponible sur cette page

)}
{/* Footer avec info */}

pour fermer

); }