Class default

This is the main class of the library. It contains all the methods to check if a key event matches a key or a combination of keys.

Hierarchy

  • default

Constructors

  • Creates a new instance of the KeysKey class.

    Parameters

    • Optional enableDebugMode: boolean = false

      Whether to enable debug mode. When debug mode is enabled, additional console logs will be displayed. This may result in some performance issues. It's recommended to disable debug mode in a production environment.

    Returns default

Properties

AllKeys: {
    A: "A";
    Alt: "Alt";
    Ampersand: "&";
    ArrowDown: "ArrowDown";
    ArrowLeft: "ArrowLeft";
    ArrowRight: "ArrowRight";
    ArrowUp: "ArrowUp";
    Asterisk: "*";
    At: "@";
    AudioVolumeDown: "AudioVolumeDown";
    AudioVolumeMute: "AudioVolumeMute";
    AudioVolumeUp: "AudioVolumeUp";
    B: "B";
    Backquote: "`";
    Backslash: "\\";
    Backspace: "Backspace";
    BracketLeft: "[";
    BracketRight: "]";
    C: "C";
    CapsLock: "CapsLock";
    Caret: "^";
    Colon: ":";
    Comma: ",";
    Control: "Ctrl";
    CurlyLeft: "{";
    CurlyRight: "}";
    D: "D";
    Delete: "Delete";
    Dollar: "$";
    E: "E";
    Eight: "8";
    End: "End";
    Enter: "Enter";
    Equal: "=";
    Escape: "Escape";
    Exclamation: "!";
    F: "F";
    F1: "F1";
    F10: "F10";
    F11: "F11";
    F12: "F12";
    F2: "F2";
    F3: "F3";
    F4: "F4";
    F5: "F5";
    F6: "F6";
    F7: "F7";
    F8: "F8";
    F9: "F9";
    Five: "5";
    Four: "4";
    G: "G";
    GreaterThan: ">";
    H: "H";
    Hash: "#";
    Home: "Home";
    I: "I";
    Insert: "Insert";
    J: "J";
    K: "K";
    L: "L";
    LessThan: "<";
    M: "M";
    MediaPlayPause: "MediaPlayPause";
    MediaStop: "MediaStop";
    MediaTrackNext: "MediaTrackNext";
    MediaTrackPrevious: "MediaTrackPrevious";
    Meta: "Meta";
    N: "N";
    Nine: "9";
    NumLock: "NumLock";
    O: "O";
    One: "1";
    Option: "Option";
    P: "P";
    PageDown: "PageDown";
    PageUp: "PageUp";
    ParenLeft: "(";
    ParenRight: ")";
    Percent: "%";
    Period: ".";
    Pipe: "|";
    Plus: "+";
    Q: "Q";
    QuestionMark: "?";
    Quote: "'";
    R: "R";
    S: "S";
    ScrollLock: "ScrollLock";
    Semicolon: ";";
    Seven: "7";
    Shift: "Shift";
    Six: "6";
    Slash: "/";
    Space: " ";
    Subtract: "-";
    T: "T";
    Tab: "Tab";
    Three: "3";
    Tilde: "~";
    Two: "2";
    U: "U";
    Underscore: "_";
    V: "V";
    W: "W";
    X: "X";
    Y: "Y";
    Z: "Z";
    a: "a";
    b: "b";
    c: "c";
    d: "d";
    e: "e";
    f: "f";
    g: "g";
    h: "h";
    i: "i";
    j: "j";
    k: "k";
    l: "l";
    m: "m";
    n: "n";
    o: "o";
    p: "p";
    q: "q";
    r: "r";
    s: "s";
    t: "t";
    u: "u";
    v: "v";
    w: "w";
    x: "x";
    y: "y";
    z: "z";
} = AllKeysGroup

Type declaration

  • A: "A"
  • Alt: "Alt"
  • Ampersand: "&"
  • ArrowDown: "ArrowDown"
  • ArrowLeft: "ArrowLeft"
  • ArrowRight: "ArrowRight"
  • ArrowUp: "ArrowUp"
  • Asterisk: "*"
  • At: "@"
  • AudioVolumeDown: "AudioVolumeDown"
  • AudioVolumeMute: "AudioVolumeMute"
  • AudioVolumeUp: "AudioVolumeUp"
  • B: "B"
  • Backquote: "`"
  • Backslash: "\\"
  • Backspace: "Backspace"
  • BracketLeft: "["
  • BracketRight: "]"
  • C: "C"
  • CapsLock: "CapsLock"
  • Caret: "^"
  • Colon: ":"
  • Comma: ","
  • Control: "Ctrl"
  • CurlyLeft: "{"
  • CurlyRight: "}"
  • D: "D"
  • Delete: "Delete"
  • Dollar: "$"
  • E: "E"
  • Eight: "8"
  • End: "End"
  • Enter: "Enter"
  • Equal: "="
  • Escape: "Escape"
  • Exclamation: "!"
  • F: "F"
  • F1: "F1"
  • F10: "F10"
  • F11: "F11"
  • F12: "F12"
  • F2: "F2"
  • F3: "F3"
  • F4: "F4"
  • F5: "F5"
  • F6: "F6"
  • F7: "F7"
  • F8: "F8"
  • F9: "F9"
  • Five: "5"
  • Four: "4"
  • G: "G"
  • GreaterThan: ">"
  • H: "H"
  • Hash: "#"
  • Home: "Home"
  • I: "I"
  • Insert: "Insert"
  • J: "J"
  • K: "K"
  • L: "L"
  • LessThan: "<"
  • M: "M"
  • MediaPlayPause: "MediaPlayPause"
  • MediaStop: "MediaStop"
  • MediaTrackNext: "MediaTrackNext"
  • MediaTrackPrevious: "MediaTrackPrevious"
  • Meta: "Meta"
  • N: "N"
  • Nine: "9"
  • NumLock: "NumLock"
  • O: "O"
  • One: "1"
  • Option: "Option"
  • P: "P"
  • PageDown: "PageDown"
  • PageUp: "PageUp"
  • ParenLeft: "("
  • ParenRight: ")"
  • Percent: "%"
  • Period: "."
  • Pipe: "|"
  • Plus: "+"
  • Q: "Q"
  • QuestionMark: "?"
  • Quote: "'"
  • R: "R"
  • S: "S"
  • ScrollLock: "ScrollLock"
  • Semicolon: ";"
  • Seven: "7"
  • Shift: "Shift"
  • Six: "6"
  • Slash: "/"
  • Space: " "
  • Subtract: "-"
  • T: "T"
  • Tab: "Tab"
  • Three: "3"
  • Tilde: "~"
  • Two: "2"
  • U: "U"
  • Underscore: "_"
  • V: "V"
  • W: "W"
  • X: "X"
  • Y: "Y"
  • Z: "Z"
  • a: "a"
  • b: "b"
  • c: "c"
  • d: "d"
  • e: "e"
  • f: "f"
  • g: "g"
  • h: "h"
  • i: "i"
  • j: "j"
  • k: "k"
  • l: "l"
  • m: "m"
  • n: "n"
  • o: "o"
  • p: "p"
  • q: "q"
  • r: "r"
  • s: "s"
  • t: "t"
  • u: "u"
  • v: "v"
  • w: "w"
  • x: "x"
  • y: "y"
  • z: "z"
Editing: typeof EditingKeysEnum = EditingKeysEnum
Function: typeof FunctionKeysEnum = FunctionKeysEnum
Letter: typeof LetterKeysEnum = LetterKeysEnum
Lock: typeof LockKeysEnum = LockKeysEnum
ModifierKeys: typeof ModifierKeysEnum = ModifierKeysEnum
Multimedia: typeof MultimediaKeysEnum = MultimediaKeysEnum
Navigation: typeof NavigationKeysEnum = NavigationKeysEnum
Number: typeof NumberKeysEnum = NumberKeysEnum
SpecialCharacter: typeof SpecialCharacterKeysEnum = SpecialCharacterKeysEnum
SpecialCombos: {
    isAltAndControl: ((event) => string[]);
    isAltAndShift: ((event) => string[]);
    isAltKey: ((event) => string[]);
    isAltOrShift: ((event) => string[]);
    isControlAndShift: ((event) => string[]);
    isControlOrShift: ((event) => string[]);
    isDelete: ((event) => string[]);
    isDigit: ((event) => string[]);
    isFunctionKey: ((event) => string[]);
    isLetter: ((event) => string[]);
    isLowercaseLetter: ((event) => string[]);
    isMediaControl: ((event) => string[]);
    isMetaAndControl: ((event) => string[]);
    isMetaAndShift: ((event) => string[]);
    isMetaOrControl: ((event) => string[]);
    isMetaOrShift: ((event) => string[]);
    isModifier: ((event) => string[]);
    isNavigationKey: ((event) => string[]);
    isNonEnglishLetter: ((event) => string[]);
    isSpecialCharacter: ((event) => string[]);
    isUppercaseLetter: ((event) => string[]);
    isWhitespace: ((event) => string[]);
} = ...

A collection of functions within the KeysKey object that assess special key group combinations in key events.

The SpecialCombos object contains various methods to check for specific combinations of keys being pressed during a KeyEvent. Each method takes a KeyEvent as an argument and returns a boolean indicating whether the specific key combination is active.

Usage Example: KeysKey.SpecialCombos.isMetaAndShift(event)

Methods:

  • isDigit(event: KeyEvent): KeysKey[] | undefined Returns an array of KeysKey if the key event corresponds to a digit, or undefined otherwise.

  • isLetter(event: KeyEvent): KeysKey[] | undefined Returns an array of KeysKey if the key event corresponds to a letter, or undefined otherwise.

  • isLowerCase(event: KeyEvent): KeysKey[] | undefined Returns an array of KeysKey if the key event corresponds to a lowercase letter, or undefined otherwise.

  • isUppercaseLetter(event: KeyEvent): KeysKey[] | undefined Returns an array of KeysKey if the key event corresponds to an uppercase letter, or undefined otherwise.

  • isNonEnglishLetter(event: KeyEvent): KeysKey[] | undefined Returns an array of KeysKey if the key event corresponds to a non-English letter, or undefined otherwise.

  • `isMetaAndShift(event: KeyEvent): KeysKey

Additional methods follow a similar pattern, analyzing different key combinations.

Type declaration

  • isAltAndControl: ((event) => string[])
      • (event): string[]
      • Parameters

        Returns string[]

  • isAltAndShift: ((event) => string[])
      • (event): string[]
      • Parameters

        Returns string[]

  • isAltKey: ((event) => string[])
      • (event): string[]
      • Parameters

        Returns string[]

  • isAltOrShift: ((event) => string[])
      • (event): string[]
      • Parameters

        Returns string[]

  • isControlAndShift: ((event) => string[])
      • (event): string[]
      • Parameters

        Returns string[]

  • isControlOrShift: ((event) => string[])
      • (event): string[]
      • Parameters

        Returns string[]

  • isDelete: ((event) => string[])
      • (event): string[]
      • Parameters

        Returns string[]

  • isDigit: ((event) => string[])
      • (event): string[]
      • Parameters

        Returns string[]

  • isFunctionKey: ((event) => string[])
      • (event): string[]
      • Parameters

        Returns string[]

  • isLetter: ((event) => string[])
      • (event): string[]
      • Parameters

        Returns string[]

  • isLowercaseLetter: ((event) => string[])
      • (event): string[]
      • Parameters

        Returns string[]

  • isMediaControl: ((event) => string[])
      • (event): string[]
      • Parameters

        Returns string[]

  • isMetaAndControl: ((event) => string[])
      • (event): string[]
      • Parameters

        Returns string[]

  • isMetaAndShift: ((event) => string[])
      • (event): string[]
      • Parameters

        Returns string[]

  • isMetaOrControl: ((event) => string[])
      • (event): string[]
      • Parameters

        Returns string[]

  • isMetaOrShift: ((event) => string[])
      • (event): string[]
      • Parameters

        Returns string[]

  • isModifier: ((event) => string[])
      • (event): string[]
      • Parameters

        Returns string[]

  • isNavigationKey: ((event) => string[])
      • (event): string[]
      • Parameters

        Returns string[]

  • isNonEnglishLetter: ((event) => string[])
      • (event): string[]
      • Parameters

        Returns string[]

  • isSpecialCharacter: ((event) => string[])
      • (event): string[]
      • Parameters

        Returns string[]

  • isUppercaseLetter: ((event) => string[])
      • (event): string[]
      • Parameters

        Returns string[]

  • isWhitespace: ((event) => string[])
      • (event): string[]
      • Parameters

        Returns string[]

SpecialKeysGroups: {
    Alt: "Alt";
    Ampersand: "&";
    ArrowDown: "ArrowDown";
    ArrowLeft: "ArrowLeft";
    ArrowRight: "ArrowRight";
    ArrowUp: "ArrowUp";
    Asterisk: "*";
    At: "@";
    AudioVolumeDown: "AudioVolumeDown";
    AudioVolumeMute: "AudioVolumeMute";
    AudioVolumeUp: "AudioVolumeUp";
    Backquote: "`";
    Backslash: "\\";
    Backspace: "Backspace";
    BracketLeft: "[";
    BracketRight: "]";
    CapsLock: "CapsLock";
    Caret: "^";
    Colon: ":";
    Comma: ",";
    Control: "Ctrl";
    CurlyLeft: "{";
    CurlyRight: "}";
    Delete: "Delete";
    Dollar: "$";
    End: "End";
    Enter: "Enter";
    Equal: "=";
    Escape: "Escape";
    Exclamation: "!";
    F1: "F1";
    F10: "F10";
    F11: "F11";
    F12: "F12";
    F2: "F2";
    F3: "F3";
    F4: "F4";
    F5: "F5";
    F6: "F6";
    F7: "F7";
    F8: "F8";
    F9: "F9";
    GreaterThan: ">";
    Hash: "#";
    Home: "Home";
    Insert: "Insert";
    LessThan: "<";
    MediaPlayPause: "MediaPlayPause";
    MediaStop: "MediaStop";
    MediaTrackNext: "MediaTrackNext";
    MediaTrackPrevious: "MediaTrackPrevious";
    Meta: "Meta";
    NumLock: "NumLock";
    Option: "Option";
    PageDown: "PageDown";
    PageUp: "PageUp";
    ParenLeft: "(";
    ParenRight: ")";
    Percent: "%";
    Period: ".";
    Pipe: "|";
    Plus: "+";
    QuestionMark: "?";
    Quote: "'";
    ScrollLock: "ScrollLock";
    Semicolon: ";";
    Shift: "Shift";
    Slash: "/";
    Space: " ";
    Subtract: "-";
    Tab: "Tab";
    Tilde: "~";
    Underscore: "_";
} = SpecialKeysGroup

Type declaration

  • Alt: "Alt"
  • Ampersand: "&"
  • ArrowDown: "ArrowDown"
  • ArrowLeft: "ArrowLeft"
  • ArrowRight: "ArrowRight"
  • ArrowUp: "ArrowUp"
  • Asterisk: "*"
  • At: "@"
  • AudioVolumeDown: "AudioVolumeDown"
  • AudioVolumeMute: "AudioVolumeMute"
  • AudioVolumeUp: "AudioVolumeUp"
  • Backquote: "`"
  • Backslash: "\\"
  • Backspace: "Backspace"
  • BracketLeft: "["
  • BracketRight: "]"
  • CapsLock: "CapsLock"
  • Caret: "^"
  • Colon: ":"
  • Comma: ","
  • Control: "Ctrl"
  • CurlyLeft: "{"
  • CurlyRight: "}"
  • Delete: "Delete"
  • Dollar: "$"
  • End: "End"
  • Enter: "Enter"
  • Equal: "="
  • Escape: "Escape"
  • Exclamation: "!"
  • F1: "F1"
  • F10: "F10"
  • F11: "F11"
  • F12: "F12"
  • F2: "F2"
  • F3: "F3"
  • F4: "F4"
  • F5: "F5"
  • F6: "F6"
  • F7: "F7"
  • F8: "F8"
  • F9: "F9"
  • GreaterThan: ">"
  • Hash: "#"
  • Home: "Home"
  • Insert: "Insert"
  • LessThan: "<"
  • MediaPlayPause: "MediaPlayPause"
  • MediaStop: "MediaStop"
  • MediaTrackNext: "MediaTrackNext"
  • MediaTrackPrevious: "MediaTrackPrevious"
  • Meta: "Meta"
  • NumLock: "NumLock"
  • Option: "Option"
  • PageDown: "PageDown"
  • PageUp: "PageUp"
  • ParenLeft: "("
  • ParenRight: ")"
  • Percent: "%"
  • Period: "."
  • Pipe: "|"
  • Plus: "+"
  • QuestionMark: "?"
  • Quote: "'"
  • ScrollLock: "ScrollLock"
  • Semicolon: ";"
  • Shift: "Shift"
  • Slash: "/"
  • Space: " "
  • Subtract: "-"
  • Tab: "Tab"
  • Tilde: "~"
  • Underscore: "_"
WhiteSpace: typeof WhiteSpaceKeysEnum = WhiteSpaceKeysEnum
debugMode: boolean = false
optimizedAndMode: boolean = false

Methods

  • Checks if all the keys match the provided event.

    Parameters

    • event: KeyEventEnum

      The DOM event that was triggered.

    • Rest ...keys: default[]

      A list of keys to check against the event. Can be provided as an array, KeysKeys groups (And / Or) or just lose arguments (will be interpreted as And).

    Returns default[]

    • Returns an array of keys that matched the event. If no key matched, returns undefined.
  • Checks if keys match the provided event.

    Parameters

    • event: KeyEventEnum

      The DOM event that was triggered.

    • Rest ...keys: default[]

      A list of keys to check against the event. Can be provided as an array, KeysKeys groups (And / Or) or just lose arguments (will be interpreted as And).

    Returns default[]

    • Returns an array of keys that matched the event. If no key matched, returns undefined.
  • Checks if keys match the provided event. If one key doesn't match it immediately terminates and does nto provide a full list of matches. This is faster than the And method.

    Parameters

    • event: KeyEventEnum

      The DOM event that was triggered.

    • Rest ...keys: default[]

      A list of keys to check against the event. Can be provided as an array, KeysKeys groups (And / Or) or just lose arguments (will be interpreted as And).

    Returns default[]

    • Returns an array of keys that matched the event. Returns undefined immediately if one key doesn't match.
  • Checks if one of the keys matches the provided event.

    Parameters

    • event: KeyEventEnum

      The DOM event that was triggered.

    • Rest ...keys: default[]

      A list of keys to check against the event. Can be provided as an array, KeysKeys groups (And / Or) or just lose arguments (will be interpreted as And).

    Returns default[]

    • Returns an array of keys that matched the event. If no key matched, returns undefined.
  • For internal use by the exposed methods. Checks if a list of keys match the provided event.

    Parameters

    Returns default[]

Generated using TypeDoc