Files
thrilltrack-explorer/src-old/components/moderation/KeyboardShortcutsHelp.tsx

56 lines
1.5 KiB
TypeScript

import {
Dialog,
DialogContent,
DialogDescription,
DialogHeader,
DialogTitle,
} from '@/components/ui/dialog';
import { Keyboard } from 'lucide-react';
interface KeyboardShortcut {
key: string;
description: string;
}
interface KeyboardShortcutsHelpProps {
open: boolean;
onOpenChange: (open: boolean) => void;
shortcuts: KeyboardShortcut[];
}
export const KeyboardShortcutsHelp = ({
open,
onOpenChange,
shortcuts,
}: KeyboardShortcutsHelpProps) => {
return (
<Dialog open={open} onOpenChange={onOpenChange}>
<DialogContent className="sm:max-w-md">
<DialogHeader>
<DialogTitle className="flex items-center gap-2">
<Keyboard className="w-5 h-5" />
Keyboard Shortcuts
</DialogTitle>
<DialogDescription>
Speed up your moderation workflow with these keyboard shortcuts
</DialogDescription>
</DialogHeader>
<div className="space-y-3 py-4">
{shortcuts.map((shortcut, index) => (
<div key={index} className="flex items-center justify-between">
<span className="text-sm text-muted-foreground">
{shortcut.description}
</span>
<kbd className="px-2 py-1 text-xs font-semibold text-foreground bg-muted border border-border rounded">
{shortcut.key}
</kbd>
</div>
))}
</div>
</DialogContent>
</Dialog>
);
};
KeyboardShortcutsHelp.displayName = 'KeyboardShortcutsHelp';