npm package discovery and stats viewer.

Discover Tips

  • General search

    [free text search, go nuts!]

  • Package details

    pkg:[package-name]

  • User packages

    @[username]

Sponsor

Optimize Toolset

I’ve always been into building performant and accessible sites, but lately I’ve been taking it extremely seriously. So much so that I’ve been building a tool to help me optimize and monitor the sites that I build to make sure that I’m making an attempt to offer the best experience to those who visit them. If you’re into performant, accessible and SEO friendly sites, you might like it too! You can check it out at Optimize Toolset.

About

Hi, 👋, I’m Ryan Hefner  and I built this site for me, and you! The goal of this site was to provide an easy way for me to check the stats on my npm packages, both for prioritizing issues and updates, and to give me a little kick in the pants to keep up on stuff.

As I was building it, I realized that I was actually using the tool to build the tool, and figured I might as well put this out there and hopefully others will find it to be a fast and useful way to search and browse npm packages as I have.

If you’re interested in other things I’m working on, follow me on Twitter or check out the open source projects I’ve been publishing on GitHub.

I am also working on a Twitter bot for this site to tweet the most popular, newest, random packages from npm. Please follow that account now and it will start sending out packages soon–ish.

Open Software & Tools

This site wouldn’t be possible without the immense generosity and tireless efforts from the people who make contributions to the world and share their work via open source initiatives. Thank you 🙏

© 2024 – Pkg Stats / Ryan Hefner

keycode-js

v3.1.0

Published

A JavaScript package with Key Code constants

Downloads

361,956

Readme

KeyCode Constants

npm version deno Build Status Language grade: JavaScript npm downloads per week GitHub contributors PRs Welcome License: MIT

A minimal JavaScript package with key code constants.

Installation

# Using npm
$ npm install keycode-js --save

# Using yarn
$ yarn add keycode-js

# Using bower
$ bower install keycode-js --save

Usage

Import the package using require() or ES / TypeScript import statement:

// CommonJS
const KeyCode = require('keycode-js');

// ES2015+
import * as KeyCode from 'keycode-js';

// TypeScript
import * as KeyCode from 'keycode-js';

// Import individual constants
import { KEY_RETURN } from 'keycode-js';

Or, using <script> tag:

<script src="https://unpkg.com/[email protected]/dist/keycode.min.js"></script>

Finally:

window.addEventListener('keyup', function(e) {
  // You may do one of these checks.

  // Check the code value.
  if (e.code === KeyCode.CODE_RETURN) {
    console.log('It was the Return key.');
    return;
  }

  // OR, check the keyCode value.
  if (e.keyCode === KeyCode.KEY_RETURN) {
    console.log('It was the Return key.');
    return;
  }

  // OR, check the key value.
  if (e.key === KeyCode.VALUE_RETURN) {
    console.log('It was the Return key.');
    return;
  }

  console.log('It was any other key.');
});

Usage with Deno

// Import all constants
import * as KeyCode from 'https://deno.land/x/[email protected]/mod.ts';

// Import individual constants
import { KEY_ENTER } from 'https://deno.land/x/[email protected]/mod.ts';

console.assert(KeyCode.KEY_ENTER === KEY_ENTER);

Available Constants

1. Key event code constants

List of available constants that corresponds to the browser's KeyboardEvent.code attribute.

[Reference]

Example usage

window.addEventListener('keyup', function(e) {
  console.log('Enter Key:', (e.code === KeyCode.CODE_RETURN));
});

List

| Key Name | Constant | Value | |------------------------|----------------------------|--------------------| | (Undefined) | CODE_UNIDENTIFIED | "Unidentified" | | Escape | CODE_ESCAPE | "Escape" | | Dash / Minus | CODE_MINUSCODE_DASH | "Minus" | | Equals | CODE_EQUALS | "Equal" | | Backspace | CODE_BACK_SPACE | "Backspace" | | Tab | CODE_TAB | "Tab" | | Return | CODE_ENTERCODE_RETURN | "Enter" | | Shift (Left) | CODE_SHIFT_LEFT | "ShiftLeft" | | Shift (Right) | CODE_SHIFT_RIGHT | "ShiftRight" | | Control (Left) | CODE_CONTROL_LEFT | "ControlLeft" | | Control (Right) | CODE_CONTROL_RIGHT | "ControlRight" | | Alt (Left) | CODE_ALT_LEFT | "AltLeft" | | Alt (Right) | CODE_ALT_RIGHT | "AltRight" | | Pause | CODE_PAUSE | "Pause" | | Caps Lock | CODE_CAPS_LOCK | "CapsLock" | | Space | CODE_SPACE | "Space" | | Page Up | CODE_PAGE_UP | "PageUp" | | Page Down | CODE_PAGE_DOWN | "PageDown" | | End | CODE_END | "End" | | Home | CODE_HOME | "Home" | | Left | CODE_LEFT | "ArrowLeft" | | Up | CODE_UP | "ArrowUp" | | Right | CODE_RIGHT | "ArrowRight" | | Down | CODE_DOWN | "ArrowDown" | | Print Screen | CODE_PRINTSCREEN | "PrintScreen" | | Insert | CODE_INSERT | "Insert" | | Delete | CODE_DELETE | "Delete" | | 0 | CODE_0 | "Digit0" | | 1 | CODE_1 | "Digit1" | | 2 | CODE_2 | "Digit2" | | 3 | CODE_3 | "Digit3" | | 4 | CODE_4 | "Digit4" | | 5 | CODE_5 | "Digit5" | | 6 | CODE_6 | "Digit6" | | 7 | CODE_7 | "Digit7" | | 8 | CODE_8 | "Digit8" | | 9 | CODE_9 | "Digit9" | | A | CODE_A | "KeyA" | | B | CODE_B | "KeyB" | | C | CODE_C | "KeyC" | | D | CODE_D | "KeyD" | | E | CODE_E | "KeyE" | | F | CODE_F | "KeyF" | | G | CODE_G | "KeyG" | | H | CODE_H | "KeyH" | | I | CODE_I | "KeyI" | | J | CODE_J | "KeyJ" | | K | CODE_K | "KeyK" | | L | CODE_L | "KeyL" | | M | CODE_M | "KeyM" | | N | CODE_N | "KeyN" | | O | CODE_O | "KeyO" | | P | CODE_P | "KeyP" | | Q | CODE_Q | "KeyQ" | | R | CODE_R | "KeyR" | | S | CODE_S | "KeyS" | | T | CODE_T | "KeyT" | | U | CODE_U | "KeyU" | | V | CODE_V | "KeyV" | | W | CODE_W | "KeyW" | | X | CODE_X | "KeyX" | | Y | CODE_Y | "KeyY" | | Z | CODE_Z | "KeyZ" | | Cmd ⌘ / Window (Left) | CODE_META_LEFT | "MetaLeft" | | Cmd ⌘ / Window (Left) | CODE_OS_LEFT | "OSLeft" | | Cmd ⌘ / Window (Right) | CODE_META_RIGHT | "MetaRight" | | Cmd ⌘ / Window (Right) | CODE_OS_RIGHT | "OSRight" | | Context Menu | CODE_CONTEXT_MENU | "ContextMenu" | | Numpad 0 | CODE_NUMPAD0 | "Numpad0" | | Numpad 1 | CODE_NUMPAD1 | "Numpad1" | | Numpad 2 | CODE_NUMPAD2 | "Numpad2" | | Numpad 3 | CODE_NUMPAD3 | "Numpad3" | | Numpad 4 | CODE_NUMPAD4 | "Numpad4" | | Numpad 5 | CODE_NUMPAD5 | "Numpad5" | | Numpad 6 | CODE_NUMPAD6 | "Numpad6" | | Numpad 7 | CODE_NUMPAD7 | "Numpad7" | | Numpad 8 | CODE_NUMPAD8 | "Numpad8" | | Numpad 9 | CODE_NUMPAD9 | "Numpad9" | | Multiply | CODE_NUMPAD_MULTIPLY | "NumpadMultiply" | | Add | CODE_NUMPAD_ADD | "NumpadAdd" | | Subtract | CODE_NUMPAD_SUBTRACT | "NumpadSubtract" | | Decimal | CODE_NUMPAD_DECIMAL | "NumpadDecimal" | | Divide | CODE_NUMPAD_DIVIDE | "NumpadDivide" | | Numpad Enter | CODE_NUMPAD_ENTER | "NumpadEnter" | | F1 | CODE_F1 | "F1" | | F2 | CODE_F2 | "F2" | | F3 | CODE_F3 | "F3" | | F4 | CODE_F4 | "F4" | | F5 | CODE_F5 | "F5" | | F6 | CODE_F6 | "F6" | | F7 | CODE_F7 | "F7" | | F8 | CODE_F8 | "F8" | | F9 | CODE_F9 | "F9" | | F10 | CODE_F10 | "F10" | | F11 | CODE_F11 | "F11" | | F12 | CODE_F12 | "F12" | | F13 | CODE_F13 | "F13" | | F14 | CODE_F14 | "F14" | | F15 | CODE_F15 | "F15" | | F16 | CODE_F16 | "F16" | | F17 | CODE_F17 | "F17" | | F18 | CODE_F18 | "F18" | | F19 | CODE_F19 | "F19" | | F20 | CODE_F20 | "F20" | | F21 | CODE_F21 | "F21" | | F22 | CODE_F22 | "F22" | | F23 | CODE_F23 | "F23" | | F24 | CODE_F24 | "F24" | | Num Lock | CODE_NUM_LOCK | "NumLock" | | Scroll Lock | CODE_SCROLL_LOCK | "ScrollLock" | | Semicolon | CODE_SEMICOLON | "Semicolon" | | Comma | CODE_COMMA | "Comma" | | Period | CODE_PERIOD | "Period" | | Slash | CODE_SLASH | "Slash" | | Back Quote | CODE_BACK_QUOTE | "Backquote" | | Open Bracket | CODE_OPEN_BRACKET | "BracketLeft" | | Back Slash | CODE_BACK_SLASH | "Backslash" | | Close Bracket | CODE_CLOSE_BRACKET | "BracketRight" | | Quote | CODE_QUOTE | "Quote" |

2. Key code constants (numeric)

List of available numeric constants that corresponds to the browser's KeyboardEvent.keyCode attribute.

[Reference]

Example usage

window.addEventListener('keyup', function(e) {
  console.log('Enter Key:', (e.keyCode === KeyCode.KEY_RETURN));
});

List

| Key Name | Constant | Value | | --------------------- | ----------------------- | ----- | | Cancel | KEY_CANCEL | 3 | | Help | KEY_HELP | 6 | | Backspace | KEY_BACK_SPACE | 8 | | Tab | KEY_TAB | 9 | | Clear | KEY_CLEAR | 12 | | Return | KEY_RETURN | 13 | | Enter (Firefox) | KEY_FIREFOX_ENTER | 14 | | Shift | KEY_SHIFT | 16 | | Control | KEY_CONTROL | 17 | | Alt | KEY_ALT | 18 | | Pause | KEY_PAUSE | 19 | | Caps Lock | KEY_CAPS_LOCK | 20 | | Escape | KEY_ESCAPE | 27 | | Space | KEY_SPACE | 32 | | Page up | KEY_PAGE_UP | 33 | | Page down | KEY_PAGE_DOWN | 34 | | End | KEY_END | 35 | | Home | KEY_HOME | 36 | | Left | KEY_LEFT | 37 | | Up | KEY_UP | 38 | | Right | KEY_RIGHT | 39 | | Down | KEY_DOWN | 40 | | Print Screen | KEY_PRINTSCREEN | 44 | | Insert | KEY_INSERT | 45 | | Delete | KEY_DELETE | 46 | | 0 | KEY_0 | 48 | | 1 | KEY_1 | 49 | | 2 | KEY_2 | 50 | | 3 | KEY_3 | 51 | | 4 | KEY_4 | 52 | | 5 | KEY_5 | 53 | | 6 | KEY_6 | 54 | | 7 | KEY_7 | 55 | | 8 | KEY_8 | 56 | | 9 | KEY_9 | 57 | | Semicolon (Firefox) | KEY_FIREFOX_SEMICOLON | 59 | | Equals (Firefox) | KEY_FIREFOX_EQUALS | 61 | | A | KEY_A | 65 | | B | KEY_B | 66 | | C | KEY_C | 67 | | D | KEY_D | 68 | | E | KEY_E | 69 | | F | KEY_F | 70 | | G | KEY_G | 71 | | H | KEY_H | 72 | | I | KEY_I | 73 | | J | KEY_J | 74 | | K | KEY_K | 75 | | L | KEY_L | 76 | | M | KEY_M | 77 | | N | KEY_N | 78 | | O | KEY_O | 79 | | P | KEY_P | 80 | | Q | KEY_Q | 81 | | R | KEY_R | 82 | | S | KEY_S | 83 | | T | KEY_T | 84 | | U | KEY_U | 85 | | V | KEY_V | 86 | | W | KEY_W | 87 | | X | KEY_X | 88 | | Y | KEY_Y | 89 | | Z | KEY_Z | 90 | | Left ⌘ / Window | KEY_LEFT_CMD | 91 | | Right ⌘ / Window | KEY_RIGHT_CMD | 92 | | Context Menu | KEY_CONTEXT_MENU | 93 | | Numpad 0 | KEY_NUMPAD0 | 96 | | Numpad 1 | KEY_NUMPAD1 | 97 | | Numpad 2 | KEY_NUMPAD2 | 98 | | Numpad 3 | KEY_NUMPAD3 | 99 | | Numpad 4 | KEY_NUMPAD4 | 100 | | Numpad 5 | KEY_NUMPAD5 | 101 | | Numpad 6 | KEY_NUMPAD6 | 102 | | Numpad 7 | KEY_NUMPAD7 | 103 | | Numpad 8 | KEY_NUMPAD8 | 104 | | Numpad 9 | KEY_NUMPAD9 | 105 | | Multiply | KEY_MULTIPLY | 106 | | Add | KEY_ADD | 107 | | Separator (Firefox) | KEY_FIREFOX_SEPARATOR | 108 | | Subtract | KEY_SUBTRACT | 109 | | Decimal | KEY_DECIMAL | 110 | | Divide | KEY_DIVIDE | 111 | | F1 | KEY_F1 | 112 | | F2 | KEY_F2 | 113 | | F3 | KEY_F3 | 114 | | F4 | KEY_F4 | 115 | | F5 | KEY_F5 | 116 | | F6 | KEY_F6 | 117 | | F7 | KEY_F7 | 118 | | F8 | KEY_F8 | 119 | | F9 | KEY_F9 | 120 | | F10 | KEY_F10 | 121 | | F11 | KEY_F11 | 122 | | F12 | KEY_F12 | 123 | | F13 | KEY_F13 | 124 | | F14 | KEY_F14 | 125 | | F15 | KEY_F15 | 126 | | F16 | KEY_F16 | 127 | | F17 | KEY_F17 | 128 | | F18 | KEY_F18 | 129 | | F19 | KEY_F19 | 130 | | F20 | KEY_F20 | 131 | | F21 | KEY_F21 | 132 | | F22 | KEY_F22 | 133 | | F23 | KEY_F23 | 134 | | F24 | KEY_F24 | 135 | | Num Lock | KEY_NUM_LOCK | 144 | | Scroll Lock | KEY_SCROLL_LOCK | 145 | | Semicolon | KEY_SEMICOLON | 186 | | Equals | KEY_EQUALS | 187 | | Comma | KEY_COMMA | 188 | | Dash | KEY_DASH | 189 | | Period | KEY_PERIOD | 190 | | Slash | KEY_SLASH | 191 | | Back Quote | KEY_BACK_QUOTE | 192 | | Open Bracket | KEY_OPEN_BRACKET | 219 | | Back Slash | KEY_BACK_SLASH | 220 | | Close Bracket | KEY_CLOSE_BRACKET | 221 | | Quote | KEY_QUOTE | 222 | | Meta (Firefox) | KEY_FIREFOX_META | 224 |

3. Key value constants

List of available constants that corresponds to the browser's KeyboardEvent.key attribute.

Example usage

window.addEventListener('keyup', function(e) {
  console.log('Enter Key:', (e.key === KeyCode.VALUE_RETURN));
});

List

| Key Name | Constant | Value | |----------------|---------------------------------------------------|-----------------| | Cancel | VALUE_CANCEL | "Cancel" | | Help | VALUE_HELP | "Help" | | Backspace | VALUE_BACK_SPACE | "Backspace" | | Tab | VALUE_TAB | "Tab" | | Clear | VALUE_CLEAR | "Clear" | | Return | VALUE_ENTER VALUE_RETURN | "Enter" | | Shift | VALUE_SHIFT | "Shift" | | Control | VALUE_CONTROL | "Control" | | Alt | VALUE_ALT | "Alt" | | Pause | VALUE_PAUSE | "Pause" | | Caps Lock | VALUE_CAPS_LOCK | "CapsLock" | | Escape | VALUE_ESCAPE | "Escape" | | Space | VALUE_SPACE | " " | | Page up | VALUE_PAGE_UP | "PageUp" | | Page down | VALUE_PAGE_DOWN | "PageDown" | | End | VALUE_END | "End" | | Home | VALUE_HOME | "Home" | | Left | VALUE_LEFT | "ArrowLeft" | | Up | VALUE_UP | "ArrowUp" | | Right | VALUE_RIGHT | "ArrowRight" | | Down | VALUE_DOWN | "ArrowDown" | | Print Screen | VALUE_PRINTSCREEN | "PrintScreen" | | Insert | VALUE_INSERT | "Insert" | | Delete | VALUE_DELETE | "Delete" | | 0 | VALUE_0 | "0" | | 1 | VALUE_1 | "1" | | 2 | VALUE_2 | "2" | | 3 | VALUE_3 | "3" | | 4 | VALUE_4 | "4" | | 5 | VALUE_5 | "5" | | 6 | VALUE_6 | "6" | | 7 | VALUE_7 | "7" | | 8 | VALUE_8 | "8" | | 9 | VALUE_9 | "9" | | A | VALUE_A | "a" | | B | VALUE_B | "b" | | C | VALUE_C | "c" | | D | VALUE_D | "d" | | E | VALUE_E | "e" | | F | VALUE_F | "f" | | G | VALUE_G | "g" | | H | VALUE_H | "h" | | I | VALUE_I | "i" | | J | VALUE_J | "j" | | K | VALUE_K | "k" | | L | VALUE_L | "l" | | M | VALUE_M | "m" | | N | VALUE_N | "n" | | O | VALUE_O | "o" | | P | VALUE_P | "p" | | Q | VALUE_Q | "q" | | R | VALUE_R | "r" | | S | VALUE_S | "s" | | T | VALUE_T | "t" | | U | VALUE_U | "u" | | V | VALUE_V | "v" | | W | VALUE_W | "w" | | X | VALUE_X | "x" | | Y | VALUE_Y | "y" | | Z | VALUE_Z | "z" | | Cmd ⌘ / Window | VALUE_METAVALUE_LEFT_CMDVALUE_RIGHT_CMD | "Meta" | | Context Menu | VALUE_CONTEXT_MENU | "ContextMenu" | | Numpad 0 | VALUE_NUMPAD0 | "0" | | Numpad 1 | VALUE_NUMPAD1 | "1" | | Numpad 2 | VALUE_NUMPAD2 | "2" | | Numpad 3 | VALUE_NUMPAD3 | "3" | | Numpad 4 | VALUE_NUMPAD4 | "4" | | Numpad 5 | VALUE_NUMPAD5 | "5" | | Numpad 6 | VALUE_NUMPAD6 | "6" | | Numpad 7 | VALUE_NUMPAD7 | "7" | | Numpad 8 | VALUE_NUMPAD8 | "8" | | Numpad 9 | VALUE_NUMPAD9 | "9" | | Multiply | VALUE_MULTIPLY | "*" | | Add | VALUE_ADD | "+" | | Subtract | VALUE_SUBTRACT | "-" | | Decimal | VALUE_DECIMAL | "." | | Divide | VALUE_DIVIDE | "/" | | F1 | VALUE_F1 | "F1" | | F2 | VALUE_F2 | "F2" | | F3 | VALUE_F3 | "F3" | | F4 | VALUE_F4 | "F4" | | F5 | VALUE_F5 | "F5" | | F6 | VALUE_F6 | "F6" | | F7 | VALUE_F7 | "F7" | | F8 | VALUE_F8 | "F8" | | F9 | VALUE_F9 | "F9" | | F10 | VALUE_F10 | "F10" | | F11 | VALUE_F11 | "F11" | | F12 | VALUE_F12 | "F12" | | F13 | VALUE_F13 | "F13" | | F14 | VALUE_F14 | "F14" | | F15 | VALUE_F15 | "F15" | | F16 | VALUE_F16 | "F16" | | F17 | VALUE_F17 | "F17" | | F18 | VALUE_F18 | "F18" | | F19 | VALUE_F19 | "F19" | | F20 | VALUE_F20 | "F20" | | F21 | VALUE_F21 | "F21" | | F22 | VALUE_F22 | "F22" | | F23 | VALUE_F23 | "F23" | | F24 | VALUE_F24 | "F24" | | Num Lock | VALUE_NUM_LOCK | "NumLock" | | Scroll Lock | VALUE_SCROLL_LOCK | "ScrollLock" | | Semicolon | VALUE_SEMICOLON | ";" | | Equals | VALUE_EQUALS | "=" | | Comma | VALUE_COMMA | "," | | Dash | VALUE_DASH | "-" | | Period | VALUE_PERIOD | "." | | Slash | VALUE_SLASH | "/" | | Back Quote | VALUE_BACK_QUOTE | "`" | | Open Bracket | VALUE_OPEN_BRACKET | "(" | | Back Slash | VALUE_BACK_SLASH | "\" | | Close Bracket | VALUE_CLOSE_BRACKET | ")" | | Quote | VALUE_QUOTE | "'" |

Contributing

All kinds of contributions are welcome. Please feel free to propose PRs, report issues and suggestions to improve.

Changelog

Check the CHANGELOG for full release history.

Maintainers

License

This package is licensed under the MIT License.