@midscene/shared 0.10.1 → 0.10.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -0,0 +1,34 @@
1
+ /**
2
+ * @license
3
+ * Copyright 2017 Google Inc.
4
+ * SPDX-License-Identifier: Apache-2.0
5
+ */
6
+ /**
7
+ * @internal
8
+ */
9
+ interface KeyDefinition {
10
+ keyCode?: number;
11
+ shiftKeyCode?: number;
12
+ key?: string;
13
+ shiftKey?: string;
14
+ code?: string;
15
+ text?: string;
16
+ shiftText?: string;
17
+ location?: number;
18
+ }
19
+ /**
20
+ * All the valid keys that can be passed to functions that take user input, such
21
+ * as {@link Keyboard.press | keyboard.press }
22
+ *
23
+ * @public
24
+ */
25
+ type KeyInput = '0' | '1' | '2' | '3' | '4' | '5' | '6' | '7' | '8' | '9' | 'Power' | 'Eject' | 'Abort' | 'Help' | 'Backspace' | 'Tab' | 'Numpad5' | 'NumpadEnter' | 'Enter' | '\r' | '\n' | 'ShiftLeft' | 'ShiftRight' | 'ControlLeft' | 'ControlRight' | 'AltLeft' | 'AltRight' | 'Pause' | 'CapsLock' | 'Escape' | 'Convert' | 'NonConvert' | 'Space' | 'Numpad9' | 'PageUp' | 'Numpad3' | 'PageDown' | 'End' | 'Numpad1' | 'Home' | 'Numpad7' | 'ArrowLeft' | 'Numpad4' | 'Numpad8' | 'ArrowUp' | 'ArrowRight' | 'Numpad6' | 'Numpad2' | 'ArrowDown' | 'Select' | 'Open' | 'PrintScreen' | 'Insert' | 'Numpad0' | 'Delete' | 'NumpadDecimal' | 'Digit0' | 'Digit1' | 'Digit2' | 'Digit3' | 'Digit4' | 'Digit5' | 'Digit6' | 'Digit7' | 'Digit8' | 'Digit9' | 'KeyA' | 'KeyB' | 'KeyC' | 'KeyD' | 'KeyE' | 'KeyF' | 'KeyG' | 'KeyH' | 'KeyI' | 'KeyJ' | 'KeyK' | 'KeyL' | 'KeyM' | 'KeyN' | 'KeyO' | 'KeyP' | 'KeyQ' | 'KeyR' | 'KeyS' | 'KeyT' | 'KeyU' | 'KeyV' | 'KeyW' | 'KeyX' | 'KeyY' | 'KeyZ' | 'MetaLeft' | 'MetaRight' | 'ContextMenu' | 'NumpadMultiply' | 'NumpadAdd' | 'NumpadSubtract' | 'NumpadDivide' | 'F1' | 'F2' | 'F3' | 'F4' | 'F5' | 'F6' | 'F7' | 'F8' | 'F9' | 'F10' | 'F11' | 'F12' | 'F13' | 'F14' | 'F15' | 'F16' | 'F17' | 'F18' | 'F19' | 'F20' | 'F21' | 'F22' | 'F23' | 'F24' | 'NumLock' | 'ScrollLock' | 'AudioVolumeMute' | 'AudioVolumeDown' | 'AudioVolumeUp' | 'MediaTrackNext' | 'MediaTrackPrevious' | 'MediaStop' | 'MediaPlayPause' | 'Semicolon' | 'Equal' | 'NumpadEqual' | 'Comma' | 'Minus' | 'Period' | 'Slash' | 'Backquote' | 'BracketLeft' | 'Backslash' | 'BracketRight' | 'Quote' | 'AltGraph' | 'Props' | 'Cancel' | 'Clear' | 'Shift' | 'Control' | 'Alt' | 'Accept' | 'ModeChange' | ' ' | 'Print' | 'Execute' | '\u0000' | 'a' | 'b' | 'c' | 'd' | 'e' | 'f' | 'g' | 'h' | 'i' | 'j' | 'k' | 'l' | 'm' | 'n' | 'o' | 'p' | 'q' | 'r' | 's' | 't' | 'u' | 'v' | 'w' | 'x' | 'y' | 'z' | 'Meta' | '*' | '+' | '-' | '/' | ';' | '=' | ',' | '.' | '`' | '[' | '\\' | ']' | "'" | 'Attn' | 'CrSel' | 'ExSel' | 'EraseEof' | 'Play' | 'ZoomOut' | ')' | '!' | '@' | '#' | '$' | '%' | '^' | '&' | '(' | 'A' | 'B' | 'C' | 'D' | 'E' | 'F' | 'G' | 'H' | 'I' | 'J' | 'K' | 'L' | 'M' | 'N' | 'O' | 'P' | 'Q' | 'R' | 'S' | 'T' | 'U' | 'V' | 'W' | 'X' | 'Y' | 'Z' | ':' | '<' | '_' | '>' | '?' | '~' | '{' | '|' | '}' | '"' | 'SoftLeft' | 'SoftRight' | 'Camera' | 'Call' | 'EndCall' | 'VolumeDown' | 'VolumeUp';
26
+ /**
27
+ * @internal
28
+ */
29
+ declare const _keyDefinitions: Readonly<Record<KeyInput, KeyDefinition>>;
30
+ declare const getKeyDefinition: (key: string) => KeyInput;
31
+ declare const isMac: boolean;
32
+ declare function transformHotkeyInput(keyInput: string): string[];
33
+
34
+ export { type KeyDefinition, type KeyInput, _keyDefinitions, getKeyDefinition, isMac, transformHotkeyInput };
@@ -0,0 +1,461 @@
1
+ "use strict";
2
+ var __defProp = Object.defineProperty;
3
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
4
+ var __getOwnPropNames = Object.getOwnPropertyNames;
5
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
6
+ var __export = (target, all) => {
7
+ for (var name in all)
8
+ __defProp(target, name, { get: all[name], enumerable: true });
9
+ };
10
+ var __copyProps = (to, from, except, desc) => {
11
+ if (from && typeof from === "object" || typeof from === "function") {
12
+ for (let key of __getOwnPropNames(from))
13
+ if (!__hasOwnProp.call(to, key) && key !== except)
14
+ __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
15
+ }
16
+ return to;
17
+ };
18
+ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
19
+
20
+ // src/us-keyboard-layout.ts
21
+ var us_keyboard_layout_exports = {};
22
+ __export(us_keyboard_layout_exports, {
23
+ _keyDefinitions: () => _keyDefinitions,
24
+ getKeyDefinition: () => getKeyDefinition,
25
+ isMac: () => isMac,
26
+ transformHotkeyInput: () => transformHotkeyInput
27
+ });
28
+ module.exports = __toCommonJS(us_keyboard_layout_exports);
29
+ var _keyDefinitions = {
30
+ "0": { keyCode: 48, key: "0", code: "Digit0" },
31
+ "1": { keyCode: 49, key: "1", code: "Digit1" },
32
+ "2": { keyCode: 50, key: "2", code: "Digit2" },
33
+ "3": { keyCode: 51, key: "3", code: "Digit3" },
34
+ "4": { keyCode: 52, key: "4", code: "Digit4" },
35
+ "5": { keyCode: 53, key: "5", code: "Digit5" },
36
+ "6": { keyCode: 54, key: "6", code: "Digit6" },
37
+ "7": { keyCode: 55, key: "7", code: "Digit7" },
38
+ "8": { keyCode: 56, key: "8", code: "Digit8" },
39
+ "9": { keyCode: 57, key: "9", code: "Digit9" },
40
+ Power: { key: "Power", code: "Power" },
41
+ Eject: { key: "Eject", code: "Eject" },
42
+ Abort: { keyCode: 3, code: "Abort", key: "Cancel" },
43
+ Help: { keyCode: 6, code: "Help", key: "Help" },
44
+ Backspace: { keyCode: 8, code: "Backspace", key: "Backspace" },
45
+ Tab: { keyCode: 9, code: "Tab", key: "Tab" },
46
+ Numpad5: {
47
+ keyCode: 12,
48
+ shiftKeyCode: 101,
49
+ key: "Clear",
50
+ code: "Numpad5",
51
+ shiftKey: "5",
52
+ location: 3
53
+ },
54
+ NumpadEnter: {
55
+ keyCode: 13,
56
+ code: "NumpadEnter",
57
+ key: "Enter",
58
+ text: "\r",
59
+ location: 3
60
+ },
61
+ Enter: { keyCode: 13, code: "Enter", key: "Enter", text: "\r" },
62
+ "\r": { keyCode: 13, code: "Enter", key: "Enter", text: "\r" },
63
+ "\n": { keyCode: 13, code: "Enter", key: "Enter", text: "\r" },
64
+ ShiftLeft: { keyCode: 16, code: "ShiftLeft", key: "Shift", location: 1 },
65
+ ShiftRight: { keyCode: 16, code: "ShiftRight", key: "Shift", location: 2 },
66
+ ControlLeft: {
67
+ keyCode: 17,
68
+ code: "ControlLeft",
69
+ key: "Control",
70
+ location: 1
71
+ },
72
+ ControlRight: {
73
+ keyCode: 17,
74
+ code: "ControlRight",
75
+ key: "Control",
76
+ location: 2
77
+ },
78
+ AltLeft: { keyCode: 18, code: "AltLeft", key: "Alt", location: 1 },
79
+ AltRight: { keyCode: 18, code: "AltRight", key: "Alt", location: 2 },
80
+ Pause: { keyCode: 19, code: "Pause", key: "Pause" },
81
+ CapsLock: { keyCode: 20, code: "CapsLock", key: "CapsLock" },
82
+ Escape: { keyCode: 27, code: "Escape", key: "Escape" },
83
+ Convert: { keyCode: 28, code: "Convert", key: "Convert" },
84
+ NonConvert: { keyCode: 29, code: "NonConvert", key: "NonConvert" },
85
+ Space: { keyCode: 32, code: "Space", key: " " },
86
+ Numpad9: {
87
+ keyCode: 33,
88
+ shiftKeyCode: 105,
89
+ key: "PageUp",
90
+ code: "Numpad9",
91
+ shiftKey: "9",
92
+ location: 3
93
+ },
94
+ PageUp: { keyCode: 33, code: "PageUp", key: "PageUp" },
95
+ Numpad3: {
96
+ keyCode: 34,
97
+ shiftKeyCode: 99,
98
+ key: "PageDown",
99
+ code: "Numpad3",
100
+ shiftKey: "3",
101
+ location: 3
102
+ },
103
+ PageDown: { keyCode: 34, code: "PageDown", key: "PageDown" },
104
+ End: { keyCode: 35, code: "End", key: "End" },
105
+ Numpad1: {
106
+ keyCode: 35,
107
+ shiftKeyCode: 97,
108
+ key: "End",
109
+ code: "Numpad1",
110
+ shiftKey: "1",
111
+ location: 3
112
+ },
113
+ Home: { keyCode: 36, code: "Home", key: "Home" },
114
+ Numpad7: {
115
+ keyCode: 36,
116
+ shiftKeyCode: 103,
117
+ key: "Home",
118
+ code: "Numpad7",
119
+ shiftKey: "7",
120
+ location: 3
121
+ },
122
+ ArrowLeft: { keyCode: 37, code: "ArrowLeft", key: "ArrowLeft" },
123
+ Numpad4: {
124
+ keyCode: 37,
125
+ shiftKeyCode: 100,
126
+ key: "ArrowLeft",
127
+ code: "Numpad4",
128
+ shiftKey: "4",
129
+ location: 3
130
+ },
131
+ Numpad8: {
132
+ keyCode: 38,
133
+ shiftKeyCode: 104,
134
+ key: "ArrowUp",
135
+ code: "Numpad8",
136
+ shiftKey: "8",
137
+ location: 3
138
+ },
139
+ ArrowUp: { keyCode: 38, code: "ArrowUp", key: "ArrowUp" },
140
+ ArrowRight: { keyCode: 39, code: "ArrowRight", key: "ArrowRight" },
141
+ Numpad6: {
142
+ keyCode: 39,
143
+ shiftKeyCode: 102,
144
+ key: "ArrowRight",
145
+ code: "Numpad6",
146
+ shiftKey: "6",
147
+ location: 3
148
+ },
149
+ Numpad2: {
150
+ keyCode: 40,
151
+ shiftKeyCode: 98,
152
+ key: "ArrowDown",
153
+ code: "Numpad2",
154
+ shiftKey: "2",
155
+ location: 3
156
+ },
157
+ ArrowDown: { keyCode: 40, code: "ArrowDown", key: "ArrowDown" },
158
+ Select: { keyCode: 41, code: "Select", key: "Select" },
159
+ Open: { keyCode: 43, code: "Open", key: "Execute" },
160
+ PrintScreen: { keyCode: 44, code: "PrintScreen", key: "PrintScreen" },
161
+ Insert: { keyCode: 45, code: "Insert", key: "Insert" },
162
+ Numpad0: {
163
+ keyCode: 45,
164
+ shiftKeyCode: 96,
165
+ key: "Insert",
166
+ code: "Numpad0",
167
+ shiftKey: "0",
168
+ location: 3
169
+ },
170
+ Delete: { keyCode: 46, code: "Delete", key: "Delete" },
171
+ NumpadDecimal: {
172
+ keyCode: 46,
173
+ shiftKeyCode: 110,
174
+ code: "NumpadDecimal",
175
+ key: "\0",
176
+ shiftKey: ".",
177
+ location: 3
178
+ },
179
+ Digit0: { keyCode: 48, code: "Digit0", shiftKey: ")", key: "0" },
180
+ Digit1: { keyCode: 49, code: "Digit1", shiftKey: "!", key: "1" },
181
+ Digit2: { keyCode: 50, code: "Digit2", shiftKey: "@", key: "2" },
182
+ Digit3: { keyCode: 51, code: "Digit3", shiftKey: "#", key: "3" },
183
+ Digit4: { keyCode: 52, code: "Digit4", shiftKey: "$", key: "4" },
184
+ Digit5: { keyCode: 53, code: "Digit5", shiftKey: "%", key: "5" },
185
+ Digit6: { keyCode: 54, code: "Digit6", shiftKey: "^", key: "6" },
186
+ Digit7: { keyCode: 55, code: "Digit7", shiftKey: "&", key: "7" },
187
+ Digit8: { keyCode: 56, code: "Digit8", shiftKey: "*", key: "8" },
188
+ Digit9: { keyCode: 57, code: "Digit9", shiftKey: "(", key: "9" },
189
+ KeyA: { keyCode: 65, code: "KeyA", shiftKey: "A", key: "a" },
190
+ KeyB: { keyCode: 66, code: "KeyB", shiftKey: "B", key: "b" },
191
+ KeyC: { keyCode: 67, code: "KeyC", shiftKey: "C", key: "c" },
192
+ KeyD: { keyCode: 68, code: "KeyD", shiftKey: "D", key: "d" },
193
+ KeyE: { keyCode: 69, code: "KeyE", shiftKey: "E", key: "e" },
194
+ KeyF: { keyCode: 70, code: "KeyF", shiftKey: "F", key: "f" },
195
+ KeyG: { keyCode: 71, code: "KeyG", shiftKey: "G", key: "g" },
196
+ KeyH: { keyCode: 72, code: "KeyH", shiftKey: "H", key: "h" },
197
+ KeyI: { keyCode: 73, code: "KeyI", shiftKey: "I", key: "i" },
198
+ KeyJ: { keyCode: 74, code: "KeyJ", shiftKey: "J", key: "j" },
199
+ KeyK: { keyCode: 75, code: "KeyK", shiftKey: "K", key: "k" },
200
+ KeyL: { keyCode: 76, code: "KeyL", shiftKey: "L", key: "l" },
201
+ KeyM: { keyCode: 77, code: "KeyM", shiftKey: "M", key: "m" },
202
+ KeyN: { keyCode: 78, code: "KeyN", shiftKey: "N", key: "n" },
203
+ KeyO: { keyCode: 79, code: "KeyO", shiftKey: "O", key: "o" },
204
+ KeyP: { keyCode: 80, code: "KeyP", shiftKey: "P", key: "p" },
205
+ KeyQ: { keyCode: 81, code: "KeyQ", shiftKey: "Q", key: "q" },
206
+ KeyR: { keyCode: 82, code: "KeyR", shiftKey: "R", key: "r" },
207
+ KeyS: { keyCode: 83, code: "KeyS", shiftKey: "S", key: "s" },
208
+ KeyT: { keyCode: 84, code: "KeyT", shiftKey: "T", key: "t" },
209
+ KeyU: { keyCode: 85, code: "KeyU", shiftKey: "U", key: "u" },
210
+ KeyV: { keyCode: 86, code: "KeyV", shiftKey: "V", key: "v" },
211
+ KeyW: { keyCode: 87, code: "KeyW", shiftKey: "W", key: "w" },
212
+ KeyX: { keyCode: 88, code: "KeyX", shiftKey: "X", key: "x" },
213
+ KeyY: { keyCode: 89, code: "KeyY", shiftKey: "Y", key: "y" },
214
+ KeyZ: { keyCode: 90, code: "KeyZ", shiftKey: "Z", key: "z" },
215
+ MetaLeft: { keyCode: 91, code: "MetaLeft", key: "Meta", location: 1 },
216
+ MetaRight: { keyCode: 92, code: "MetaRight", key: "Meta", location: 2 },
217
+ ContextMenu: { keyCode: 93, code: "ContextMenu", key: "ContextMenu" },
218
+ NumpadMultiply: {
219
+ keyCode: 106,
220
+ code: "NumpadMultiply",
221
+ key: "*",
222
+ location: 3
223
+ },
224
+ NumpadAdd: { keyCode: 107, code: "NumpadAdd", key: "+", location: 3 },
225
+ NumpadSubtract: {
226
+ keyCode: 109,
227
+ code: "NumpadSubtract",
228
+ key: "-",
229
+ location: 3
230
+ },
231
+ NumpadDivide: { keyCode: 111, code: "NumpadDivide", key: "/", location: 3 },
232
+ F1: { keyCode: 112, code: "F1", key: "F1" },
233
+ F2: { keyCode: 113, code: "F2", key: "F2" },
234
+ F3: { keyCode: 114, code: "F3", key: "F3" },
235
+ F4: { keyCode: 115, code: "F4", key: "F4" },
236
+ F5: { keyCode: 116, code: "F5", key: "F5" },
237
+ F6: { keyCode: 117, code: "F6", key: "F6" },
238
+ F7: { keyCode: 118, code: "F7", key: "F7" },
239
+ F8: { keyCode: 119, code: "F8", key: "F8" },
240
+ F9: { keyCode: 120, code: "F9", key: "F9" },
241
+ F10: { keyCode: 121, code: "F10", key: "F10" },
242
+ F11: { keyCode: 122, code: "F11", key: "F11" },
243
+ F12: { keyCode: 123, code: "F12", key: "F12" },
244
+ F13: { keyCode: 124, code: "F13", key: "F13" },
245
+ F14: { keyCode: 125, code: "F14", key: "F14" },
246
+ F15: { keyCode: 126, code: "F15", key: "F15" },
247
+ F16: { keyCode: 127, code: "F16", key: "F16" },
248
+ F17: { keyCode: 128, code: "F17", key: "F17" },
249
+ F18: { keyCode: 129, code: "F18", key: "F18" },
250
+ F19: { keyCode: 130, code: "F19", key: "F19" },
251
+ F20: { keyCode: 131, code: "F20", key: "F20" },
252
+ F21: { keyCode: 132, code: "F21", key: "F21" },
253
+ F22: { keyCode: 133, code: "F22", key: "F22" },
254
+ F23: { keyCode: 134, code: "F23", key: "F23" },
255
+ F24: { keyCode: 135, code: "F24", key: "F24" },
256
+ NumLock: { keyCode: 144, code: "NumLock", key: "NumLock" },
257
+ ScrollLock: { keyCode: 145, code: "ScrollLock", key: "ScrollLock" },
258
+ AudioVolumeMute: {
259
+ keyCode: 173,
260
+ code: "AudioVolumeMute",
261
+ key: "AudioVolumeMute"
262
+ },
263
+ AudioVolumeDown: {
264
+ keyCode: 174,
265
+ code: "AudioVolumeDown",
266
+ key: "AudioVolumeDown"
267
+ },
268
+ AudioVolumeUp: { keyCode: 175, code: "AudioVolumeUp", key: "AudioVolumeUp" },
269
+ MediaTrackNext: {
270
+ keyCode: 176,
271
+ code: "MediaTrackNext",
272
+ key: "MediaTrackNext"
273
+ },
274
+ MediaTrackPrevious: {
275
+ keyCode: 177,
276
+ code: "MediaTrackPrevious",
277
+ key: "MediaTrackPrevious"
278
+ },
279
+ MediaStop: { keyCode: 178, code: "MediaStop", key: "MediaStop" },
280
+ MediaPlayPause: {
281
+ keyCode: 179,
282
+ code: "MediaPlayPause",
283
+ key: "MediaPlayPause"
284
+ },
285
+ Semicolon: { keyCode: 186, code: "Semicolon", shiftKey: ":", key: ";" },
286
+ Equal: { keyCode: 187, code: "Equal", shiftKey: "+", key: "=" },
287
+ NumpadEqual: { keyCode: 187, code: "NumpadEqual", key: "=", location: 3 },
288
+ Comma: { keyCode: 188, code: "Comma", shiftKey: "<", key: "," },
289
+ Minus: { keyCode: 189, code: "Minus", shiftKey: "_", key: "-" },
290
+ Period: { keyCode: 190, code: "Period", shiftKey: ">", key: "." },
291
+ Slash: { keyCode: 191, code: "Slash", shiftKey: "?", key: "/" },
292
+ Backquote: { keyCode: 192, code: "Backquote", shiftKey: "~", key: "`" },
293
+ BracketLeft: { keyCode: 219, code: "BracketLeft", shiftKey: "{", key: "[" },
294
+ Backslash: { keyCode: 220, code: "Backslash", shiftKey: "|", key: "\\" },
295
+ BracketRight: { keyCode: 221, code: "BracketRight", shiftKey: "}", key: "]" },
296
+ Quote: { keyCode: 222, code: "Quote", shiftKey: '"', key: "'" },
297
+ AltGraph: { keyCode: 225, code: "AltGraph", key: "AltGraph" },
298
+ Props: { keyCode: 247, code: "Props", key: "CrSel" },
299
+ Cancel: { keyCode: 3, key: "Cancel", code: "Abort" },
300
+ Clear: { keyCode: 12, key: "Clear", code: "Numpad5", location: 3 },
301
+ Shift: { keyCode: 16, key: "Shift", code: "ShiftLeft", location: 1 },
302
+ Control: { keyCode: 17, key: "Control", code: "ControlLeft", location: 1 },
303
+ Alt: { keyCode: 18, key: "Alt", code: "AltLeft", location: 1 },
304
+ Accept: { keyCode: 30, key: "Accept" },
305
+ ModeChange: { keyCode: 31, key: "ModeChange" },
306
+ " ": { keyCode: 32, key: " ", code: "Space" },
307
+ Print: { keyCode: 42, key: "Print" },
308
+ Execute: { keyCode: 43, key: "Execute", code: "Open" },
309
+ "\0": { keyCode: 46, key: "\0", code: "NumpadDecimal", location: 3 },
310
+ a: { keyCode: 65, key: "a", code: "KeyA" },
311
+ b: { keyCode: 66, key: "b", code: "KeyB" },
312
+ c: { keyCode: 67, key: "c", code: "KeyC" },
313
+ d: { keyCode: 68, key: "d", code: "KeyD" },
314
+ e: { keyCode: 69, key: "e", code: "KeyE" },
315
+ f: { keyCode: 70, key: "f", code: "KeyF" },
316
+ g: { keyCode: 71, key: "g", code: "KeyG" },
317
+ h: { keyCode: 72, key: "h", code: "KeyH" },
318
+ i: { keyCode: 73, key: "i", code: "KeyI" },
319
+ j: { keyCode: 74, key: "j", code: "KeyJ" },
320
+ k: { keyCode: 75, key: "k", code: "KeyK" },
321
+ l: { keyCode: 76, key: "l", code: "KeyL" },
322
+ m: { keyCode: 77, key: "m", code: "KeyM" },
323
+ n: { keyCode: 78, key: "n", code: "KeyN" },
324
+ o: { keyCode: 79, key: "o", code: "KeyO" },
325
+ p: { keyCode: 80, key: "p", code: "KeyP" },
326
+ q: { keyCode: 81, key: "q", code: "KeyQ" },
327
+ r: { keyCode: 82, key: "r", code: "KeyR" },
328
+ s: { keyCode: 83, key: "s", code: "KeyS" },
329
+ t: { keyCode: 84, key: "t", code: "KeyT" },
330
+ u: { keyCode: 85, key: "u", code: "KeyU" },
331
+ v: { keyCode: 86, key: "v", code: "KeyV" },
332
+ w: { keyCode: 87, key: "w", code: "KeyW" },
333
+ x: { keyCode: 88, key: "x", code: "KeyX" },
334
+ y: { keyCode: 89, key: "y", code: "KeyY" },
335
+ z: { keyCode: 90, key: "z", code: "KeyZ" },
336
+ Meta: { keyCode: 91, key: "Meta", code: "MetaLeft", location: 1 },
337
+ "*": { keyCode: 106, key: "*", code: "NumpadMultiply", location: 3 },
338
+ "+": { keyCode: 107, key: "+", code: "NumpadAdd", location: 3 },
339
+ "-": { keyCode: 109, key: "-", code: "NumpadSubtract", location: 3 },
340
+ "/": { keyCode: 111, key: "/", code: "NumpadDivide", location: 3 },
341
+ ";": { keyCode: 186, key: ";", code: "Semicolon" },
342
+ "=": { keyCode: 187, key: "=", code: "Equal" },
343
+ ",": { keyCode: 188, key: ",", code: "Comma" },
344
+ ".": { keyCode: 190, key: ".", code: "Period" },
345
+ "`": { keyCode: 192, key: "`", code: "Backquote" },
346
+ "[": { keyCode: 219, key: "[", code: "BracketLeft" },
347
+ "\\": { keyCode: 220, key: "\\", code: "Backslash" },
348
+ "]": { keyCode: 221, key: "]", code: "BracketRight" },
349
+ "'": { keyCode: 222, key: "'", code: "Quote" },
350
+ Attn: { keyCode: 246, key: "Attn" },
351
+ CrSel: { keyCode: 247, key: "CrSel", code: "Props" },
352
+ ExSel: { keyCode: 248, key: "ExSel" },
353
+ EraseEof: { keyCode: 249, key: "EraseEof" },
354
+ Play: { keyCode: 250, key: "Play" },
355
+ ZoomOut: { keyCode: 251, key: "ZoomOut" },
356
+ ")": { keyCode: 48, key: ")", code: "Digit0" },
357
+ "!": { keyCode: 49, key: "!", code: "Digit1" },
358
+ "@": { keyCode: 50, key: "@", code: "Digit2" },
359
+ "#": { keyCode: 51, key: "#", code: "Digit3" },
360
+ $: { keyCode: 52, key: "$", code: "Digit4" },
361
+ "%": { keyCode: 53, key: "%", code: "Digit5" },
362
+ "^": { keyCode: 54, key: "^", code: "Digit6" },
363
+ "&": { keyCode: 55, key: "&", code: "Digit7" },
364
+ "(": { keyCode: 57, key: "(", code: "Digit9" },
365
+ A: { keyCode: 65, key: "A", code: "KeyA" },
366
+ B: { keyCode: 66, key: "B", code: "KeyB" },
367
+ C: { keyCode: 67, key: "C", code: "KeyC" },
368
+ D: { keyCode: 68, key: "D", code: "KeyD" },
369
+ E: { keyCode: 69, key: "E", code: "KeyE" },
370
+ F: { keyCode: 70, key: "F", code: "KeyF" },
371
+ G: { keyCode: 71, key: "G", code: "KeyG" },
372
+ H: { keyCode: 72, key: "H", code: "KeyH" },
373
+ I: { keyCode: 73, key: "I", code: "KeyI" },
374
+ J: { keyCode: 74, key: "J", code: "KeyJ" },
375
+ K: { keyCode: 75, key: "K", code: "KeyK" },
376
+ L: { keyCode: 76, key: "L", code: "KeyL" },
377
+ M: { keyCode: 77, key: "M", code: "KeyM" },
378
+ N: { keyCode: 78, key: "N", code: "KeyN" },
379
+ O: { keyCode: 79, key: "O", code: "KeyO" },
380
+ P: { keyCode: 80, key: "P", code: "KeyP" },
381
+ Q: { keyCode: 81, key: "Q", code: "KeyQ" },
382
+ R: { keyCode: 82, key: "R", code: "KeyR" },
383
+ S: { keyCode: 83, key: "S", code: "KeyS" },
384
+ T: { keyCode: 84, key: "T", code: "KeyT" },
385
+ U: { keyCode: 85, key: "U", code: "KeyU" },
386
+ V: { keyCode: 86, key: "V", code: "KeyV" },
387
+ W: { keyCode: 87, key: "W", code: "KeyW" },
388
+ X: { keyCode: 88, key: "X", code: "KeyX" },
389
+ Y: { keyCode: 89, key: "Y", code: "KeyY" },
390
+ Z: { keyCode: 90, key: "Z", code: "KeyZ" },
391
+ ":": { keyCode: 186, key: ":", code: "Semicolon" },
392
+ "<": { keyCode: 188, key: "<", code: "Comma" },
393
+ _: { keyCode: 189, key: "_", code: "Minus" },
394
+ ">": { keyCode: 190, key: ">", code: "Period" },
395
+ "?": { keyCode: 191, key: "?", code: "Slash" },
396
+ "~": { keyCode: 192, key: "~", code: "Backquote" },
397
+ "{": { keyCode: 219, key: "{", code: "BracketLeft" },
398
+ "|": { keyCode: 220, key: "|", code: "Backslash" },
399
+ "}": { keyCode: 221, key: "}", code: "BracketRight" },
400
+ '"': { keyCode: 222, key: '"', code: "Quote" },
401
+ SoftLeft: { key: "SoftLeft", code: "SoftLeft", location: 4 },
402
+ SoftRight: { key: "SoftRight", code: "SoftRight", location: 4 },
403
+ Camera: { keyCode: 44, key: "Camera", code: "Camera", location: 4 },
404
+ Call: { key: "Call", code: "Call", location: 4 },
405
+ EndCall: { keyCode: 95, key: "EndCall", code: "EndCall", location: 4 },
406
+ VolumeDown: {
407
+ keyCode: 182,
408
+ key: "VolumeDown",
409
+ code: "VolumeDown",
410
+ location: 4
411
+ },
412
+ VolumeUp: { keyCode: 183, key: "VolumeUp", code: "VolumeUp", location: 4 }
413
+ };
414
+ var lowerCaseKeyDefinitions = Object.entries(_keyDefinitions).reduce(
415
+ (acc, [key, definition]) => {
416
+ const lowerKey = key.toLowerCase();
417
+ if (lowerKey !== key) {
418
+ acc[lowerKey] = definition;
419
+ }
420
+ return acc;
421
+ },
422
+ {}
423
+ );
424
+ var getKeyDefinition = (key) => {
425
+ const lowerKey = key.toLowerCase();
426
+ if (lowerCaseKeyDefinitions[lowerKey]) {
427
+ return lowerCaseKeyDefinitions[lowerKey].key;
428
+ }
429
+ return key;
430
+ };
431
+ var isMac = typeof window !== "undefined" ? /Mac|iPod|iPhone|iPad/.test(window.navigator.platform) : process.platform === "darwin";
432
+ var keyMap = {
433
+ return: _keyDefinitions.Enter.key,
434
+ enter: _keyDefinitions.Enter.key,
435
+ ctrl: isMac ? _keyDefinitions.Meta.key : _keyDefinitions.Control.key,
436
+ shift: _keyDefinitions.Shift.key,
437
+ alt: _keyDefinitions.Alt.key,
438
+ space: _keyDefinitions.Space.key,
439
+ "page down": _keyDefinitions.PageDown.key,
440
+ pagedown: _keyDefinitions.PageDown.key,
441
+ "page up": _keyDefinitions.PageUp.key,
442
+ pageup: _keyDefinitions.PageUp.key
443
+ };
444
+ function transformHotkeyInput(keyInput) {
445
+ return keyInput.split(" ").map((key) => {
446
+ let newKey = key;
447
+ if (keyMap[key.toLowerCase()]) {
448
+ newKey = keyMap[key.toLowerCase()];
449
+ }
450
+ const keyDefinition = getKeyDefinition(newKey);
451
+ if (keyDefinition) {
452
+ return keyDefinition;
453
+ }
454
+ return newKey;
455
+ });
456
+ }
457
+ /**
458
+ * @license
459
+ * Copyright 2017 Google Inc.
460
+ * SPDX-License-Identifier: Apache-2.0
461
+ */
@@ -0,0 +1,34 @@
1
+ /**
2
+ * @license
3
+ * Copyright 2017 Google Inc.
4
+ * SPDX-License-Identifier: Apache-2.0
5
+ */
6
+ /**
7
+ * @internal
8
+ */
9
+ interface KeyDefinition {
10
+ keyCode?: number;
11
+ shiftKeyCode?: number;
12
+ key?: string;
13
+ shiftKey?: string;
14
+ code?: string;
15
+ text?: string;
16
+ shiftText?: string;
17
+ location?: number;
18
+ }
19
+ /**
20
+ * All the valid keys that can be passed to functions that take user input, such
21
+ * as {@link Keyboard.press | keyboard.press }
22
+ *
23
+ * @public
24
+ */
25
+ type KeyInput = '0' | '1' | '2' | '3' | '4' | '5' | '6' | '7' | '8' | '9' | 'Power' | 'Eject' | 'Abort' | 'Help' | 'Backspace' | 'Tab' | 'Numpad5' | 'NumpadEnter' | 'Enter' | '\r' | '\n' | 'ShiftLeft' | 'ShiftRight' | 'ControlLeft' | 'ControlRight' | 'AltLeft' | 'AltRight' | 'Pause' | 'CapsLock' | 'Escape' | 'Convert' | 'NonConvert' | 'Space' | 'Numpad9' | 'PageUp' | 'Numpad3' | 'PageDown' | 'End' | 'Numpad1' | 'Home' | 'Numpad7' | 'ArrowLeft' | 'Numpad4' | 'Numpad8' | 'ArrowUp' | 'ArrowRight' | 'Numpad6' | 'Numpad2' | 'ArrowDown' | 'Select' | 'Open' | 'PrintScreen' | 'Insert' | 'Numpad0' | 'Delete' | 'NumpadDecimal' | 'Digit0' | 'Digit1' | 'Digit2' | 'Digit3' | 'Digit4' | 'Digit5' | 'Digit6' | 'Digit7' | 'Digit8' | 'Digit9' | 'KeyA' | 'KeyB' | 'KeyC' | 'KeyD' | 'KeyE' | 'KeyF' | 'KeyG' | 'KeyH' | 'KeyI' | 'KeyJ' | 'KeyK' | 'KeyL' | 'KeyM' | 'KeyN' | 'KeyO' | 'KeyP' | 'KeyQ' | 'KeyR' | 'KeyS' | 'KeyT' | 'KeyU' | 'KeyV' | 'KeyW' | 'KeyX' | 'KeyY' | 'KeyZ' | 'MetaLeft' | 'MetaRight' | 'ContextMenu' | 'NumpadMultiply' | 'NumpadAdd' | 'NumpadSubtract' | 'NumpadDivide' | 'F1' | 'F2' | 'F3' | 'F4' | 'F5' | 'F6' | 'F7' | 'F8' | 'F9' | 'F10' | 'F11' | 'F12' | 'F13' | 'F14' | 'F15' | 'F16' | 'F17' | 'F18' | 'F19' | 'F20' | 'F21' | 'F22' | 'F23' | 'F24' | 'NumLock' | 'ScrollLock' | 'AudioVolumeMute' | 'AudioVolumeDown' | 'AudioVolumeUp' | 'MediaTrackNext' | 'MediaTrackPrevious' | 'MediaStop' | 'MediaPlayPause' | 'Semicolon' | 'Equal' | 'NumpadEqual' | 'Comma' | 'Minus' | 'Period' | 'Slash' | 'Backquote' | 'BracketLeft' | 'Backslash' | 'BracketRight' | 'Quote' | 'AltGraph' | 'Props' | 'Cancel' | 'Clear' | 'Shift' | 'Control' | 'Alt' | 'Accept' | 'ModeChange' | ' ' | 'Print' | 'Execute' | '\u0000' | 'a' | 'b' | 'c' | 'd' | 'e' | 'f' | 'g' | 'h' | 'i' | 'j' | 'k' | 'l' | 'm' | 'n' | 'o' | 'p' | 'q' | 'r' | 's' | 't' | 'u' | 'v' | 'w' | 'x' | 'y' | 'z' | 'Meta' | '*' | '+' | '-' | '/' | ';' | '=' | ',' | '.' | '`' | '[' | '\\' | ']' | "'" | 'Attn' | 'CrSel' | 'ExSel' | 'EraseEof' | 'Play' | 'ZoomOut' | ')' | '!' | '@' | '#' | '$' | '%' | '^' | '&' | '(' | 'A' | 'B' | 'C' | 'D' | 'E' | 'F' | 'G' | 'H' | 'I' | 'J' | 'K' | 'L' | 'M' | 'N' | 'O' | 'P' | 'Q' | 'R' | 'S' | 'T' | 'U' | 'V' | 'W' | 'X' | 'Y' | 'Z' | ':' | '<' | '_' | '>' | '?' | '~' | '{' | '|' | '}' | '"' | 'SoftLeft' | 'SoftRight' | 'Camera' | 'Call' | 'EndCall' | 'VolumeDown' | 'VolumeUp';
26
+ /**
27
+ * @internal
28
+ */
29
+ declare const _keyDefinitions: Readonly<Record<KeyInput, KeyDefinition>>;
30
+ declare const getKeyDefinition: (key: string) => KeyInput;
31
+ declare const isMac: boolean;
32
+ declare function transformHotkeyInput(keyInput: string): string[];
33
+
34
+ export { type KeyDefinition, type KeyInput, _keyDefinitions, getKeyDefinition, isMac, transformHotkeyInput };