mirror of
https://github.com/supabase/supabase.git
synced 2026-10-05 17:35:10 +03:00
## I have read the [CONTRIBUTING.md](https://github.com/supabase/supabase/blob/master/CONTRIBUTING.md) file. YES ## What kind of change does this PR introduce? Cleanup shortcuts with new hooks <!-- This is an auto-generated comment: release notes by coderabbit.ai --> ## Summary by CodeRabbit * **Refactor** * Centralized keyboard shortcut system for consistent shortcut behavior across the app and moved preference toggles to a unified registry. * **New Features** * Added explicit shortcuts for Command Menu, AI Assistant, Inline Editor, and result copy/download actions. * Hotkey preferences UI now renders dynamically from the centralized shortcut list. * **Tests** * Test helpers updated to include the command menu provider for accurate shortcut behavior in tests. <!-- end of auto-generated comment: release notes by coderabbit.ai -->
9 lines
434 B
TypeScript
9 lines
434 B
TypeScript
/**
|
|
* Convert a TanStack Hotkeys hotkey string (e.g. `"Mod+Shift+M"`) into the
|
|
* key-array format consumed by the `<KeyboardShortcut />` component from `ui`
|
|
* (e.g. `["Meta", "Shift", "M"]`). `KeyboardShortcut` resolves `Meta` to ⌘ on
|
|
* macOS or `Ctrl` elsewhere, so this mapping is platform-safe.
|
|
*/
|
|
export const hotkeyToKeys = (hotkey: string): string[] =>
|
|
hotkey.split('+').map((part) => (part === 'Mod' ? 'Meta' : part))
|