import { useEffect } from 'react'; export const useHotkeyFocus = (ref, hotkey = 'k') => { useEffect(() => { if (!ref?.current) return; const handleKeyPress = (event) => { const isHotkey = event.key.toLowerCase() === hotkey.toLowerCase(); // CTRL + Hotkey if (isHotkey && (event.metaKey || event.ctrlKey)) { event.preventDefault(); ref.current?.focus(); } // ESC to blur if (event.key === 'Escape' && document.activeElement === ref.current) { ref.current.blur(); } }; document.addEventListener('keydown', handleKeyPress); return () => document.removeEventListener('keydown', handleKeyPress); }, [ref, hotkey]); };