All files / src/hooks/common useKeyPressed.ts

0% Statements 0/14
0% Branches 0/6
0% Functions 0/5
0% Lines 0/14

Press n or j to go to the next uncovered block, b, p or k for the previous block.

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31                                                             
import { useEffect, useState } from 'react';
 
function useKeyPressed() {
  const [keyPressed, setKeyPressed] = useState(false);
  useEffect(() => {
    function handleKeyDown(event) {
      Iif (event.key === 'Control' || event.key === 'Meta') {
        setKeyPressed(true);
      }
    }
 
    function handleKeyUp(event) {
      Iif (event.key === 'Control' || event.key === 'Meta') {
        setKeyPressed(false);
      }
    }
 
    document.addEventListener('keydown', handleKeyDown);
    document.addEventListener('keyup', handleKeyUp);
 
    return () => {
      document.removeEventListener('keydown', handleKeyDown);
      document.removeEventListener('keyup', handleKeyUp);
    };
  }, []);
 
  return keyPressed;
}
 
export default useKeyPressed;