Skip to content

A TypeScript string enum for compile-time safety when working with event.code

License

Notifications You must be signed in to change notification settings

HubertY/ts-code-enum

Repository files navigation

ts-code-enum

A TypeScript string enum for compile-time safety when working with event.code.

Inspired by https://gitlab.com/nfriend/ts-key-enum.

Installation

npm install ts-code-enum --save
yarn add ts-code-enum

Usage

For a basic enum:

import { KBCode } from "ts-code-enum";

For a const enum:

import { KBCode } from "ts-code-enum/const";

Then:

// if (ev.code === 'Escape') { ... }
if (ev.code === KBCode.Escape) { ... }

const enums are replaced by plain strings at compile-time. If you are using Typescript and your toolchain supports const enum, use ts-code-enum/const. Otherwise use ts-code-enum.

About event.code

MDN: The KeyboardEvent.code property represents a physical key on the keyboard (as opposed to the character generated by pressing the key). In other words, this property returns a value that isn't altered by keyboard layout or the state of the modifier keys.

Enum data is obtained by scraping the code values for major platforms from MDN. Values are included if they are present on all major platforms. Alphanumeric keys such as KBCode.KeyQ = "KeyQ" are included.

About

A TypeScript string enum for compile-time safety when working with event.code

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published