1.0.1 • Published 5 years ago

fnkg-keytranslator v1.0.1

Weekly downloads
3
License
MIT
Repository
github
Last release
5 years ago

fnkg-keytranslator

Translates the KeyboardEvent.key code (which is the "offical" successor of KeyboardEvent.keyCode) to value common on all browsers.

The KeyboardEvent.keyCode is deprecated according to this source: https://developer.mozilla.org/de/docs/Web/API/KeyboardEvent/keyCode. If you are using typescript and are using the keyCode you are probably seeing the 'keyCode is deprecated' message'.

The problem with using the successor KeyboardEvent.key, is that the codes differ among browsers (see https://caniuse.com/#search=KeyboardEvent.key) This package provides the function KeyTranslate which will translate any given Event parameter to a uniform 'key' result which conforms to this standard: https://developer.mozilla.org/en-US/docs/Web/API/KeyboardEvent/key/Key_Values

The 'key' value can then be used in conjunction with the package ts-key-enum : https://www.npmjs.com/package/ts-key-enum.

Example

import { Key } from 'ts-key-enum';
import { KeyTranslate } from 'fnkg-keytranslator';

...
onKeydown(event: KeyboardEvent) {
  const tkey = KeyTranslate(event);
  switch (tkey) {
    case Key.ArrowUp:
      // do something when user pressed the directional up key.
      console.log('up');
      break;
    case Key.ArrowDown:
      // do something when user pressed the directional down key.
      console.log('down');
      break;
  }
}