import { Dialog } from "./dialog"; const IS_MAC = typeof navigator !== "undefined" && /mac/i.test(navigator.platform); const MOD = IS_MAC ? "\u2318" : "Ctrl"; interface ShortcutGroup { label: string; shortcuts: { keys: string; description: string }[]; } const SHORTCUT_GROUPS: ShortcutGroup[] = [ { label: "General", shortcuts: [ { keys: `${MOD} K`, description: "Search pages" }, { keys: "/", description: "Insert block (in editor)" }, { keys: "?", description: "Keyboard shortcuts" }, { keys: "Esc", description: "Close dialog / deselect" }, ], }, { label: "Editor", shortcuts: [ { keys: `${MOD} B`, description: "Bold" }, { keys: `${MOD} I`, description: "Italic" }, { keys: `${MOD} U`, description: "Underline" }, { keys: `${MOD} E`, description: "Inline code" }, { keys: `${MOD} Z`, description: "Undo" }, { keys: IS_MAC ? "\u2318 \u21e7 Z" : "Ctrl Shift Z", description: "Redo" }, ], }, ]; interface ShortcutHelpProps { open: boolean; onClose: () => void; } export function ShortcutHelp({ open, onClose }: ShortcutHelpProps) { return (

Keyboard shortcuts

{SHORTCUT_GROUPS.map((group) => (

{group.label}

{group.shortcuts.map((s) => (
{s.description} {s.keys}
))}
))}
); }