@enact/core
Version:
Enact is an open source JavaScript framework containing everything you need to create a fast, scalable mobile or web application.
54 lines (51 loc) • 1.25 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", {
value: true
});
var _keymap = require("./keymap");
Object.keys(_keymap).forEach(function (key) {
if (key === "default" || key === "__esModule") return;
if (key in exports && exports[key] === _keymap[key]) return;
Object.defineProperty(exports, key, {
enumerable: true,
get: function get() {
return _keymap[key];
}
});
});
/**
* Manages a map of names to key codes to simplify event handlers
*
* Example:
* ```
* import {add, is} from '@enact/core/keymap';
*
* add('enter', 13);
* const isEnter = is('enter');
*
* // within event handler
* if (isEnter(ev.keyCode)) {
* // handle enter
* }
* ```
*
* @module core/keymap
* @exports add
* @exports addAll
* @exports is
* @exports remove
* @exports removeAll
*/
// keymap uses a singleton object, map, to manage the keymap. since webpack may make multiple copies
// of the module available if the import path is different, we ensure a consistent import path for
// the singleton instance by facading it with this module.
// Add the default 5-way navigation key codes
(0, _keymap.addAll)({
enter: [13, 16777221],
left: 37,
up: 38,
right: 39,
down: 40,
pageUp: 33,
pageDown: 34
});