import KEYS from '#core/constants/keys'; import { useHotkeys } from 'react-hotkeys-hook'; import { useGlobalHotkeysStore } from '~/stores/global_hotkeys_store'; type ShortcutOptions = { enabled?: boolean; disableGlobalCheck?: boolean; }; export default function useShortcut( key: keyof typeof KEYS, cb: () => void, { enabled, disableGlobalCheck }: ShortcutOptions = { enabled: true, disableGlobalCheck: false, } ) { const { globalHotkeysEnabled } = useGlobalHotkeysStore(); return useHotkeys( KEYS[key], (event) => { event.preventDefault(); cb(); }, { enabled: disableGlobalCheck ? enabled : enabled && globalHotkeysEnabled, enableOnFormTags: ['INPUT'], } ); }