UNPKG

@gechiui/components

Version:
33 lines (29 loc) 710 B
/** * GeChiUI dependencies */ import { RIGHT, UP, DOWN, LEFT } from '@gechiui/keycodes'; /** * @type {number[]} */ const arrowKeys = [RIGHT, UP, DOWN, LEFT]; /** * Normalizes the 'key' property of a KeyboardEvent in IE/Edge * * Source: * https://github.com/downshift-js/downshift/blob/a71005bd879d05d7dcb892d1e0dc5c6ca74e9d39/src/utils.js#L279 * * @param {import('react').KeyboardEvent} event A keyboardEvent object * * @return {string} The keyboard key */ export function normalizeArrowKey(event) { const { key, keyCode } = event; if (arrowKeys.includes(keyCode) && key.indexOf('Arrow') !== 0) { return `Arrow${key}`; } return key; } //# sourceMappingURL=keyboard.js.map