1 | var codeToKeyMap = {
|
2 |
|
3 | Space: ' ',
|
4 | Slash: '/',
|
5 | ArrowLeft: 'ArrowLeft',
|
6 | ArrowUp: 'ArrowUp',
|
7 | ArrowRight: 'ArrowRight',
|
8 | ArrowDown: 'ArrowDown',
|
9 | Escape: 'Escape',
|
10 | Enter: 'Enter'
|
11 | };
|
12 | var allFalse = {
|
13 | alt: false,
|
14 | ctrl: false,
|
15 | meta: false,
|
16 | shift: false
|
17 | };
|
18 | export var matchesModifiers = function matchesModifiers(modifiers, event) {
|
19 | var _ref = modifiers === false ? allFalse : modifiers,
|
20 | alt = _ref.alt,
|
21 | ctrl = _ref.ctrl,
|
22 | meta = _ref.meta,
|
23 | shift = _ref.shift;
|
24 |
|
25 | if (typeof alt === 'boolean' && alt !== event.altKey) return false;
|
26 | if (typeof ctrl === 'boolean' && ctrl !== event.ctrlKey) return false;
|
27 | if (typeof meta === 'boolean' && meta !== event.metaKey) return false;
|
28 | if (typeof shift === 'boolean' && shift !== event.shiftKey) return false;
|
29 | return true;
|
30 | };
|
31 | export var matchesKeyCode = function matchesKeyCode(code, event) {
|
32 |
|
33 | return event.code ? event.code === code : event.key === codeToKeyMap[code];
|
34 | }; |
\ | No newline at end of file |