| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166 | 
							- /**
 -  * Enumerates the supported keys.
 -  * NOTE: The maps represents physical keys on the keyboard, not chars.
 -  * @readonly
 -  * @enum {string}
 -  */
 - export const KEYS = {
 -     BACKSPACE: 'backspace',
 -     DELETE: 'delete',
 -     RETURN: 'enter',
 -     TAB: 'tab',
 -     ESCAPE: 'escape',
 -     UP: 'up',
 -     DOWN: 'down',
 -     RIGHT: 'right',
 -     LEFT: 'left',
 -     HOME: 'home',
 -     END: 'end',
 -     PAGEUP: 'pageup',
 -     PAGEDOWN: 'pagedown',
 - 
 -     F1: 'f1',
 -     F2: 'f2',
 -     F3: 'f3',
 -     F4: 'f4',
 -     F5: 'f5',
 -     F6: 'f6',
 -     F7: 'f7',
 -     F8: 'f8',
 -     F9: 'f9',
 -     F10: 'f10',
 -     F11: 'f11',
 -     F12: 'f12',
 -     META: 'command',
 -     CMD_L: 'command',
 -     CMD_R: 'command',
 -     ALT: 'alt',
 -     CONTROL: 'control',
 -     SHIFT: 'shift',
 -     CAPS_LOCK: 'caps_lock', // not supported by robotjs
 -     SPACE: 'space',
 -     PRINTSCREEN: 'printscreen',
 -     INSERT: 'insert',
 - 
 -     NUMPAD_0: 'numpad_0',
 -     NUMPAD_1: 'numpad_1',
 -     NUMPAD_2: 'numpad_2',
 -     NUMPAD_3: 'numpad_3',
 -     NUMPAD_4: 'numpad_4',
 -     NUMPAD_5: 'numpad_5',
 -     NUMPAD_6: 'numpad_6',
 -     NUMPAD_7: 'numpad_7',
 -     NUMPAD_8: 'numpad_8',
 -     NUMPAD_9: 'numpad_9',
 - 
 -     COMMA: ',',
 - 
 -     PERIOD: '.',
 -     SEMICOLON: ';',
 -     QUOTE: '\'',
 -     BRACKET_LEFT: '[',
 -     BRACKET_RIGHT: ']',
 -     BACKQUOTE: '`',
 -     BACKSLASH: '\\',
 -     MINUS: '-',
 -     EQUAL: '=',
 -     SLASH: '/'
 - };
 - 
 - /* eslint-disable max-len */
 - /**
 -  * Mapping between the key codes and keys deined in KEYS.
 -  * The mappings are based on
 -  * https://developer.mozilla.org/en-US/docs/Web/API/KeyboardEvent/keyCode#Specifications
 -  */
 - /* eslint-enable max-len */
 - const keyCodeToKey = {
 -     8: KEYS.BACKSPACE,
 -     9: KEYS.TAB,
 -     13: KEYS.RETURN,
 -     16: KEYS.SHIFT,
 -     17: KEYS.CONTROL,
 -     18: KEYS.ALT,
 -     20: KEYS.CAPS_LOCK,
 -     27: KEYS.ESCAPE,
 -     32: KEYS.SPACE,
 -     33: KEYS.PAGEUP,
 -     34: KEYS.PAGEDOWN,
 -     35: KEYS.END,
 -     36: KEYS.HOME,
 -     37: KEYS.LEFT,
 -     38: KEYS.UP,
 -     39: KEYS.RIGHT,
 -     40: KEYS.DOWN,
 -     42: KEYS.PRINTSCREEN,
 -     44: KEYS.PRINTSCREEN,
 -     45: KEYS.INSERT,
 -     46: KEYS.DELETE,
 -     59: KEYS.SEMICOLON,
 -     61: KEYS.EQUAL,
 -     91: KEYS.CMD_L,
 -     92: KEYS.CMD_R,
 -     93: KEYS.CMD_R,
 -     96: KEYS.NUMPAD_0,
 -     97: KEYS.NUMPAD_1,
 -     98: KEYS.NUMPAD_2,
 -     99: KEYS.NUMPAD_3,
 -     100: KEYS.NUMPAD_4,
 -     101: KEYS.NUMPAD_5,
 -     102: KEYS.NUMPAD_6,
 -     103: KEYS.NUMPAD_7,
 -     104: KEYS.NUMPAD_8,
 -     105: KEYS.NUMPAD_9,
 -     112: KEYS.F1,
 -     113: KEYS.F2,
 -     114: KEYS.F3,
 -     115: KEYS.F4,
 -     116: KEYS.F5,
 -     117: KEYS.F6,
 -     118: KEYS.F7,
 -     119: KEYS.F8,
 -     120: KEYS.F9,
 -     121: KEYS.F10,
 -     122: KEYS.F11,
 -     123: KEYS.F12,
 -     124: KEYS.PRINTSCREEN,
 -     173: KEYS.MINUS,
 -     186: KEYS.SEMICOLON,
 -     187: KEYS.EQUAL,
 -     188: KEYS.COMMA,
 -     189: KEYS.MINUS,
 -     190: KEYS.PERIOD,
 -     191: KEYS.SLASH,
 -     192: KEYS.BACKQUOTE,
 -     219: KEYS.BRACKET_LEFT,
 -     220: KEYS.BACKSLASH,
 -     221: KEYS.BRACKET_RIGHT,
 -     222: KEYS.QUOTE,
 -     224: KEYS.META,
 -     229: KEYS.SEMICOLON
 - };
 - 
 - /**
 -  * Generate codes for digit keys (0-9)
 -  */
 - for (let i = 0; i < 10; i++) {
 -     keyCodeToKey[i + 48] = `${i}`;
 - }
 - 
 - /**
 -  * Generate codes for letter keys (a-z)
 -  */
 - for (let i = 0; i < 26; i++) {
 -     const keyCode = i + 65;
 - 
 -     keyCodeToKey[keyCode] = String.fromCharCode(keyCode).toLowerCase();
 - }
 - 
 - /**
 -  * Returns key associated with the keyCode from the passed event.
 -  * @param {KeyboardEvent} event the event
 -  * @returns {KEYS} the key on the keyboard.
 -  */
 - export function keyboardEventToKey(event) {
 -     return keyCodeToKey[event.which];
 - }
 
 
  |