Skip to content

Commit 556e877

Browse files
refactor: use pre-created Set for modifier key lookup in isModifierKey (#188)
Co-authored-by: Andrei Zhaleznichenka <zhalea@amazon.de>
1 parent 78240a2 commit 556e877

1 file changed

Lines changed: 4 additions & 1 deletion

File tree

src/internal/keycode.ts

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -21,8 +21,11 @@ export enum KeyCode {
2121
meta = 91,
2222
}
2323

24+
// Pre-created Set for O(1) lookup instead of creating a new array on every call
25+
const modifierKeyCodes = new Set([KeyCode.shift, KeyCode.alt, KeyCode.control, KeyCode.meta]);
26+
2427
export function isModifierKey(event: KeyboardEvent) {
2528
// we do not want to highlight focused element
2629
// when special keys are pressed
27-
return [KeyCode.shift, KeyCode.alt, KeyCode.control, KeyCode.meta].includes(event.keyCode);
30+
return modifierKeyCodes.has(event.keyCode);
2831
}

0 commit comments

Comments
 (0)