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