@celljs/widget 3.8.0 → 3.9.0

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.
Files changed (53) hide show
  1. package/esm/browser/annotation/index.d.ts +1 -0
  2. package/esm/browser/annotation/index.js +2 -0
  3. package/esm/browser/annotation/index.js.map +1 -0
  4. package/esm/browser/annotation/widget.d.ts +9 -0
  5. package/esm/browser/annotation/widget.js +26 -0
  6. package/esm/browser/annotation/widget.js.map +1 -0
  7. package/esm/browser/index.d.ts +5 -0
  8. package/esm/browser/index.js +6 -0
  9. package/esm/browser/index.js.map +1 -0
  10. package/esm/browser/keyboard/index.d.ts +1 -0
  11. package/esm/browser/keyboard/index.js +2 -0
  12. package/esm/browser/keyboard/index.js.map +1 -0
  13. package/esm/browser/keyboard/keys.d.ts +253 -0
  14. package/esm/browser/keyboard/keys.js +616 -0
  15. package/esm/browser/keyboard/keys.js.map +1 -0
  16. package/esm/browser/locale/index.d.ts +2 -0
  17. package/esm/browser/locale/index.js +3 -0
  18. package/esm/browser/locale/index.js.map +1 -0
  19. package/esm/browser/locale/locale-manager.d.ts +13 -0
  20. package/esm/browser/locale/locale-manager.js +68 -0
  21. package/esm/browser/locale/locale-manager.js.map +1 -0
  22. package/esm/browser/locale/locale-protocol.d.ts +15 -0
  23. package/esm/browser/locale/locale-protocol.js +3 -0
  24. package/esm/browser/locale/locale-protocol.js.map +1 -0
  25. package/esm/browser/module.d.ts +2 -0
  26. package/esm/browser/module.js +3 -0
  27. package/esm/browser/module.js.map +1 -0
  28. package/esm/browser/theme/index.d.ts +2 -0
  29. package/esm/browser/theme/index.js +3 -0
  30. package/esm/browser/theme/index.js.map +1 -0
  31. package/esm/browser/theme/theme-manager.d.ts +13 -0
  32. package/esm/browser/theme/theme-manager.js +69 -0
  33. package/esm/browser/theme/theme-manager.js.map +1 -0
  34. package/esm/browser/theme/theme-protocol.d.ts +18 -0
  35. package/esm/browser/theme/theme-protocol.js +4 -0
  36. package/esm/browser/theme/theme-protocol.js.map +1 -0
  37. package/esm/browser/widget/index.d.ts +4 -0
  38. package/esm/browser/widget/index.js +5 -0
  39. package/esm/browser/widget/index.js.map +1 -0
  40. package/esm/browser/widget/widget-factory.d.ts +9 -0
  41. package/esm/browser/widget/widget-factory.js +43 -0
  42. package/esm/browser/widget/widget-factory.js.map +1 -0
  43. package/esm/browser/widget/widget-manager.d.ts +14 -0
  44. package/esm/browser/widget/widget-manager.js +77 -0
  45. package/esm/browser/widget/widget-manager.js.map +1 -0
  46. package/esm/browser/widget/widget-protocol.d.ts +37 -0
  47. package/esm/browser/widget/widget-protocol.js +9 -0
  48. package/esm/browser/widget/widget-protocol.js.map +1 -0
  49. package/esm/browser/widget/widget-util.d.ts +5 -0
  50. package/esm/browser/widget/widget-util.js +25 -0
  51. package/esm/browser/widget/widget-util.js.map +1 -0
  52. package/esm/package.json +3 -0
  53. package/package.json +54 -4
@@ -0,0 +1,616 @@
1
+ import { isOSX } from '@celljs/core';
2
+ export var KeySequence;
3
+ (function (KeySequence) {
4
+ function equals(a, b) {
5
+ if (a.length !== b.length) {
6
+ return false;
7
+ }
8
+ for (let i = 0; i < a.length; i++) {
9
+ if (!a[i].equals(b[i])) {
10
+ return false;
11
+ }
12
+ }
13
+ return true;
14
+ }
15
+ KeySequence.equals = equals;
16
+ let CompareResult;
17
+ (function (CompareResult) {
18
+ CompareResult[CompareResult["NONE"] = 0] = "NONE";
19
+ CompareResult[CompareResult["PARTIAL"] = 1] = "PARTIAL";
20
+ CompareResult[CompareResult["SHADOW"] = 2] = "SHADOW";
21
+ CompareResult[CompareResult["FULL"] = 3] = "FULL";
22
+ })(CompareResult = KeySequence.CompareResult || (KeySequence.CompareResult = {}));
23
+ /* Compares two KeySequences, returns:
24
+ * FULL if the KeySequences are the same.
25
+ * PARTIAL if the KeySequence a part of b.
26
+ * SHADOW if the KeySequence b part of a.
27
+ * NONE if the KeySequences are not the same at all.
28
+ */
29
+ function compare(a, b) {
30
+ let first = a;
31
+ let second = b;
32
+ let shadow = false;
33
+ if (b.length < a.length) {
34
+ first = b;
35
+ second = a;
36
+ shadow = true;
37
+ }
38
+ for (let i = 0; i < first.length; i++) {
39
+ if (first[i].equals(second[i]) === false) {
40
+ return KeySequence.CompareResult.NONE;
41
+ }
42
+ }
43
+ if (first.length < second.length) {
44
+ if (shadow === false) {
45
+ return KeySequence.CompareResult.PARTIAL;
46
+ }
47
+ else {
48
+ return KeySequence.CompareResult.SHADOW;
49
+ }
50
+ }
51
+ return KeySequence.CompareResult.FULL;
52
+ }
53
+ KeySequence.compare = compare;
54
+ function parse(keybinding) {
55
+ const keyCodes = [];
56
+ const rawKeyCodes = keybinding.trim().split(/\s+/g);
57
+ for (const rawKeyCode of rawKeyCodes) {
58
+ const keyCode = KeyCode.parse(rawKeyCode);
59
+ if (keyCode !== undefined) {
60
+ keyCodes.push(keyCode);
61
+ }
62
+ }
63
+ return keyCodes;
64
+ }
65
+ KeySequence.parse = parse;
66
+ })(KeySequence || (KeySequence = {}));
67
+ /**
68
+ * Representation of a pressed key combined with key modifiers.
69
+ */
70
+ export class KeyCode {
71
+ constructor(schema) {
72
+ const key = schema.key;
73
+ if (key) {
74
+ if (key.code && key.keyCode && key.easyString) {
75
+ this.key = key;
76
+ }
77
+ else if (key.code) {
78
+ this.key = Key.getKey(key.code);
79
+ }
80
+ else if (key.keyCode) {
81
+ this.key = Key.getKey(key.keyCode);
82
+ }
83
+ }
84
+ this.ctrl = !!schema.ctrl;
85
+ this.shift = !!schema.shift;
86
+ this.alt = !!schema.alt;
87
+ this.meta = !!schema.meta;
88
+ this.character = schema.character;
89
+ }
90
+ /**
91
+ * Return true if this KeyCode only contains modifiers.
92
+ */
93
+ isModifierOnly() {
94
+ return this.key === undefined;
95
+ }
96
+ /**
97
+ * Return true if the given KeyCode is equal to this one.
98
+ */
99
+ equals(other) {
100
+ if (this.key && (!other.key || this.key.code !== other.key.code) || !this.key && other.key) {
101
+ return false;
102
+ }
103
+ return this.ctrl === other.ctrl && this.alt === other.alt && this.shift === other.shift && this.meta === other.meta;
104
+ }
105
+ /*
106
+ * Return a keybinding string compatible with the `Keybinding.keybinding` property.
107
+ */
108
+ toString() {
109
+ const result = [];
110
+ if (this.meta) {
111
+ result.push(SpecialCases.META);
112
+ }
113
+ if (this.shift) {
114
+ result.push(Key.SHIFT_LEFT.easyString);
115
+ }
116
+ if (this.alt) {
117
+ result.push(Key.ALT_LEFT.easyString);
118
+ }
119
+ if (this.ctrl) {
120
+ result.push(Key.CONTROL_LEFT.easyString);
121
+ }
122
+ if (this.key) {
123
+ result.push(this.key.easyString);
124
+ }
125
+ return result.join('+');
126
+ }
127
+ /**
128
+ * Create a KeyCode from one of several input types.
129
+ */
130
+ static createKeyCode(input, eventDispatch = 'code') {
131
+ if (typeof input === 'string') {
132
+ const parts = input.split('+');
133
+ if (!KeyCode.isModifierString(parts[0])) {
134
+ return KeyCode.createKeyCode({
135
+ first: Key.getKey(parts[0]),
136
+ modifiers: parts.slice(1)
137
+ });
138
+ }
139
+ return KeyCode.createKeyCode({ modifiers: parts });
140
+ }
141
+ else if (KeyCode.isKeyboardEvent(input)) {
142
+ const key = KeyCode.toKey(input, eventDispatch);
143
+ return new KeyCode({
144
+ key: Key.isModifier(key.code) ? undefined : key,
145
+ meta: isOSX && input.metaKey,
146
+ shift: input.shiftKey,
147
+ alt: input.altKey,
148
+ ctrl: input.ctrlKey,
149
+ character: KeyCode.toCharacter(input)
150
+ });
151
+ }
152
+ else if (input.first || input.modifiers) {
153
+ const keystroke = input;
154
+ const schema = {
155
+ key: keystroke.first
156
+ };
157
+ if (keystroke.modifiers) {
158
+ if (isOSX) {
159
+ schema.meta = keystroke.modifiers.some(mod => mod === KeyModifier.CtrlCmd);
160
+ schema.ctrl = keystroke.modifiers.some(mod => mod === KeyModifier.MacCtrl);
161
+ }
162
+ else {
163
+ schema.meta = false;
164
+ schema.ctrl = keystroke.modifiers.some(mod => mod === KeyModifier.CtrlCmd);
165
+ }
166
+ schema.shift = keystroke.modifiers.some(mod => mod === KeyModifier.Shift);
167
+ schema.alt = keystroke.modifiers.some(mod => mod === KeyModifier.Alt);
168
+ }
169
+ return new KeyCode(schema);
170
+ }
171
+ else {
172
+ return new KeyCode(input);
173
+ }
174
+ }
175
+ /* Reset the key hashmap, this is for testing purposes. */
176
+ static resetKeyBindings() {
177
+ KeyCode.keybindings = {};
178
+ }
179
+ /**
180
+ * Parses a string and returns a KeyCode object.
181
+ * @param keybinding String representation of a keybinding
182
+ */
183
+ static parse(keybinding) {
184
+ if (KeyCode.keybindings[keybinding]) {
185
+ return KeyCode.keybindings[keybinding];
186
+ }
187
+ const schema = {};
188
+ const keys = [];
189
+ let currentKey = '';
190
+ for (const character of keybinding.trim().toLowerCase()) {
191
+ if (currentKey && (character === '-' || character === '+')) {
192
+ keys.push(currentKey);
193
+ currentKey = '';
194
+ }
195
+ else if (character !== '+') {
196
+ currentKey += character;
197
+ }
198
+ }
199
+ if (currentKey) {
200
+ keys.push(currentKey);
201
+ }
202
+ /* If duplicates i.e ctrl+ctrl+a or alt+alt+b or b+alt+b it is invalid */
203
+ if (keys.length !== new Set(keys).size) {
204
+ throw new Error(`Can't parse keybinding ${keybinding} Duplicate modifiers`);
205
+ }
206
+ for (let keyString of keys) {
207
+ if (SPECIAL_ALIASES[keyString] !== undefined) {
208
+ keyString = SPECIAL_ALIASES[keyString];
209
+ }
210
+ const key = EASY_TO_KEY[keyString];
211
+ /* meta only works on macOS */
212
+ if (keyString === SpecialCases.META) {
213
+ if (isOSX) {
214
+ schema.meta = true;
215
+ }
216
+ else {
217
+ throw new Error(`Can't parse keybinding ${keybinding} meta is for OSX only`);
218
+ }
219
+ /* ctrlcmd for M1 keybindings that work on both macOS and other platforms */
220
+ }
221
+ else if (keyString === SpecialCases.CTRLCMD) {
222
+ if (isOSX) {
223
+ schema.meta = true;
224
+ }
225
+ else {
226
+ schema.ctrl = true;
227
+ }
228
+ }
229
+ else if (Key.isKey(key)) {
230
+ if (Key.isModifier(key.code)) {
231
+ if (key.code === Key.CONTROL_LEFT.code || key.code === Key.CONTROL_RIGHT.code) {
232
+ schema.ctrl = true;
233
+ }
234
+ else if (key.code === Key.SHIFT_LEFT.code || key.code === Key.SHIFT_RIGHT.code) {
235
+ schema.shift = true;
236
+ }
237
+ else if (key.code === Key.ALT_LEFT.code || key.code === Key.ALT_RIGHT.code) {
238
+ schema.alt = true;
239
+ }
240
+ }
241
+ else {
242
+ schema.key = key;
243
+ }
244
+ }
245
+ else {
246
+ throw new Error(`Unrecognized key '${keyString}' in '${keybinding}'`);
247
+ }
248
+ }
249
+ KeyCode.keybindings[keybinding] = new KeyCode(schema);
250
+ return KeyCode.keybindings[keybinding];
251
+ }
252
+ }
253
+ KeyCode.keybindings = {};
254
+ (function (KeyCode) {
255
+ /*
256
+ * Return true if the string is a modifier M1 to M4.
257
+ */
258
+ function isModifierString(key) {
259
+ return key === KeyModifier.CtrlCmd
260
+ || key === KeyModifier.Shift
261
+ || key === KeyModifier.Alt
262
+ || key === KeyModifier.MacCtrl;
263
+ }
264
+ KeyCode.isModifierString = isModifierString;
265
+ /**
266
+ * Different scopes have different execution environments. This means that they have different built-ins
267
+ * (different global object, different constructors, etc.). This may result in unexpected results. For instance,
268
+ * `[] instanceof window.frames[0].Array` will return `false`, because `Array.prototype !== window.frames[0].Array`
269
+ * and arrays inherit from the former.
270
+ * See: https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Operators/instanceof
271
+ *
272
+ * Note: just add another check if the current `event.type` checking is insufficient.
273
+ */
274
+ function isKeyboardEvent(event) {
275
+ if (typeof KeyboardEvent === 'undefined') { // This can happen in tests
276
+ return false;
277
+ }
278
+ if (event instanceof KeyboardEvent) {
279
+ return true;
280
+ }
281
+ const { type } = event;
282
+ if (type) {
283
+ return type === 'keypress' || type === 'keydown' || type === 'keyup';
284
+ }
285
+ return false;
286
+ }
287
+ KeyCode.isKeyboardEvent = isKeyboardEvent;
288
+ /**
289
+ * Determine the pressed key of a keyboard event. This key should correspond to the physical key according
290
+ * to a standard US keyboard layout. International keyboard layouts are handled by `KeyboardLayoutService`.
291
+ *
292
+ * `keyIdentifier` is used to access this deprecated field:
293
+ * https://developer.mozilla.org/en-US/docs/Web/API/KeyboardEvent/keyIdentifier
294
+ */
295
+ function toKey(event, dispatch = 'code') {
296
+ const code = event.code;
297
+ if (code && dispatch === 'code') {
298
+ if (isOSX) {
299
+ // https://github.com/eclipse-theia/theia/issues/4986
300
+ const char = event.key;
301
+ if (code === 'IntlBackslash' && (char === '`' || char === '~')) {
302
+ return Key.BACKQUOTE;
303
+ }
304
+ else if (code === 'Backquote' && (char === '§' || char === '±')) {
305
+ return Key.INTL_BACKSLASH;
306
+ }
307
+ }
308
+ // https://github.com/eclipse-theia/theia/issues/7315
309
+ if (code.startsWith('Numpad') && event.key && event.key.length > 1) {
310
+ const k = Key.getKey(event.key);
311
+ if (k) {
312
+ return k;
313
+ }
314
+ }
315
+ const key = Key.getKey(code);
316
+ if (key) {
317
+ return key;
318
+ }
319
+ }
320
+ // eslint-disable-next-line deprecation/deprecation
321
+ const keyCode = event.keyCode;
322
+ if (keyCode) {
323
+ const key = Key.getKey(keyCode);
324
+ if (key) {
325
+ return key;
326
+ }
327
+ }
328
+ const keyIdentifier = event.keyIdentifier;
329
+ if (keyIdentifier) {
330
+ const key = Key.getKey(keyIdentifier);
331
+ if (key) {
332
+ return key;
333
+ }
334
+ }
335
+ throw new Error(`Cannot get key code from the keyboard event: ${event}.`);
336
+ }
337
+ KeyCode.toKey = toKey;
338
+ /**
339
+ * Determine the actual printable character that is generated from a pressed key.
340
+ * If the key does not correspond to a printable character, `undefined` is returned.
341
+ * The result may be altered by modifier keys.
342
+ */
343
+ function toCharacter(event) {
344
+ const key = event.key;
345
+ // Use the key property if it contains exactly one unicode character
346
+ if (key && Array.from(key).length === 1) {
347
+ return key;
348
+ }
349
+ // eslint-disable-next-line deprecation/deprecation
350
+ const charCode = event.charCode;
351
+ // Use the charCode property if it does not correspond to a unicode control character
352
+ if (charCode && charCode > 0x1f && !(charCode >= 0x80 && charCode <= 0x9f)) {
353
+ return String.fromCharCode(charCode);
354
+ }
355
+ return undefined;
356
+ }
357
+ KeyCode.toCharacter = toCharacter;
358
+ })(KeyCode || (KeyCode = {}));
359
+ export var KeyModifier;
360
+ (function (KeyModifier) {
361
+ /**
362
+ * M1 is the COMMAND key on MacOS X, and the CTRL key on most other platforms.
363
+ */
364
+ KeyModifier["CtrlCmd"] = "M1";
365
+ /**
366
+ * M2 is the SHIFT key.
367
+ */
368
+ KeyModifier["Shift"] = "M2";
369
+ /**
370
+ * M3 is the Option key on MacOS X, and the ALT key on most other platforms.
371
+ */
372
+ KeyModifier["Alt"] = "M3";
373
+ /**
374
+ * M4 is the CTRL key on MacOS X, and is undefined on other platforms.
375
+ */
376
+ KeyModifier["MacCtrl"] = "M4";
377
+ })(KeyModifier || (KeyModifier = {}));
378
+ (function (KeyModifier) {
379
+ /**
380
+ * The CTRL key, independently of the platform.
381
+ * _Note:_ In general `KeyModifier.CtrlCmd` should be preferred over this constant.
382
+ */
383
+ KeyModifier.CTRL = isOSX ? KeyModifier.MacCtrl : KeyModifier.CtrlCmd;
384
+ /**
385
+ * An alias for the SHIFT key (`KeyModifier.Shift`).
386
+ */
387
+ KeyModifier.SHIFT = KeyModifier.Shift;
388
+ /**
389
+ * `true` if the argument represents a modifier. Otherwise, `false`.
390
+ */
391
+ function isModifier(key) {
392
+ if (key) {
393
+ switch (key) {
394
+ case 'M1': // Fall through.
395
+ case 'M2': // Fall through.
396
+ case 'M3': // Fall through.
397
+ case 'M4': return true;
398
+ default: return false;
399
+ }
400
+ }
401
+ return false;
402
+ }
403
+ KeyModifier.isModifier = isModifier;
404
+ })(KeyModifier || (KeyModifier = {}));
405
+ const CODE_TO_KEY = {};
406
+ const KEY_CODE_TO_KEY = {};
407
+ const EASY_TO_KEY = {}; // From 'ctrl' to Key structure
408
+ const MODIFIERS = [];
409
+ const SPECIAL_ALIASES = {
410
+ 'option': 'alt',
411
+ 'command': 'meta',
412
+ 'cmd': 'meta',
413
+ 'return': 'enter',
414
+ 'esc': 'escape',
415
+ 'mod': 'ctrl',
416
+ 'ins': 'insert',
417
+ 'del': 'delete',
418
+ 'control': 'ctrl',
419
+ };
420
+ export var SpecialCases;
421
+ (function (SpecialCases) {
422
+ SpecialCases.META = 'meta';
423
+ SpecialCases.CTRLCMD = 'ctrlcmd';
424
+ })(SpecialCases || (SpecialCases = {}));
425
+ export var Key;
426
+ (function (Key) {
427
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
428
+ function isKey(arg) {
429
+ return typeof arg === 'object' && ('code' in arg) && ('keyCode' in arg);
430
+ }
431
+ Key.isKey = isKey;
432
+ function getKey(arg) {
433
+ if (typeof arg === 'number') {
434
+ return KEY_CODE_TO_KEY[arg];
435
+ }
436
+ else {
437
+ return CODE_TO_KEY[arg];
438
+ }
439
+ }
440
+ Key.getKey = getKey;
441
+ function isModifier(arg) {
442
+ if (typeof arg === 'number') {
443
+ return MODIFIERS.find(key => key.keyCode === arg) !== undefined;
444
+ }
445
+ return MODIFIERS.find(key => key.code === arg) !== undefined;
446
+ }
447
+ Key.isModifier = isModifier;
448
+ function equals(key, keyCode) {
449
+ return !!keyCode.key && key.keyCode === keyCode.key.keyCode;
450
+ }
451
+ Key.equals = equals;
452
+ Key.BACKSPACE = { code: 'Backspace', keyCode: 8, easyString: 'backspace' };
453
+ Key.TAB = { code: 'Tab', keyCode: 9, easyString: 'tab' };
454
+ Key.ENTER = { code: 'Enter', keyCode: 13, easyString: 'enter' };
455
+ Key.ESCAPE = { code: 'Escape', keyCode: 27, easyString: 'escape' };
456
+ Key.SPACE = { code: 'Space', keyCode: 32, easyString: 'space' };
457
+ Key.PAGE_UP = { code: 'PageUp', keyCode: 33, easyString: 'pageup' };
458
+ Key.PAGE_DOWN = { code: 'PageDown', keyCode: 34, easyString: 'pagedown' };
459
+ Key.END = { code: 'End', keyCode: 35, easyString: 'end' };
460
+ Key.HOME = { code: 'Home', keyCode: 36, easyString: 'home' };
461
+ Key.ARROW_LEFT = { code: 'ArrowLeft', keyCode: 37, easyString: 'left' };
462
+ Key.ARROW_UP = { code: 'ArrowUp', keyCode: 38, easyString: 'up' };
463
+ Key.ARROW_RIGHT = { code: 'ArrowRight', keyCode: 39, easyString: 'right' };
464
+ Key.ARROW_DOWN = { code: 'ArrowDown', keyCode: 40, easyString: 'down' };
465
+ Key.INSERT = { code: 'Insert', keyCode: 45, easyString: 'insert' };
466
+ Key.DELETE = { code: 'Delete', keyCode: 46, easyString: 'delete' };
467
+ Key.SHIFT_LEFT = { code: 'ShiftLeft', keyCode: 16, easyString: 'shift' };
468
+ Key.SHIFT_RIGHT = { code: 'ShiftRight', keyCode: 16, easyString: 'shift' };
469
+ Key.CONTROL_LEFT = { code: 'ControlLeft', keyCode: 17, easyString: 'ctrl' };
470
+ Key.CONTROL_RIGHT = { code: 'ControlRight', keyCode: 17, easyString: 'ctrl' };
471
+ Key.ALT_LEFT = { code: 'AltLeft', keyCode: 18, easyString: 'alt' };
472
+ Key.ALT_RIGHT = { code: 'AltRight', keyCode: 18, easyString: 'alt' };
473
+ Key.CAPS_LOCK = { code: 'CapsLock', keyCode: 20, easyString: 'capslock' };
474
+ Key.OS_LEFT = { code: 'OSLeft', keyCode: 91, easyString: 'super' };
475
+ Key.OS_RIGHT = { code: 'OSRight', keyCode: 92, easyString: 'super' };
476
+ Key.DIGIT0 = { code: 'Digit0', keyCode: 48, easyString: '0' };
477
+ Key.DIGIT1 = { code: 'Digit1', keyCode: 49, easyString: '1' };
478
+ Key.DIGIT2 = { code: 'Digit2', keyCode: 50, easyString: '2' };
479
+ Key.DIGIT3 = { code: 'Digit3', keyCode: 51, easyString: '3' };
480
+ Key.DIGIT4 = { code: 'Digit4', keyCode: 52, easyString: '4' };
481
+ Key.DIGIT5 = { code: 'Digit5', keyCode: 53, easyString: '5' };
482
+ Key.DIGIT6 = { code: 'Digit6', keyCode: 54, easyString: '6' };
483
+ Key.DIGIT7 = { code: 'Digit7', keyCode: 55, easyString: '7' };
484
+ Key.DIGIT8 = { code: 'Digit8', keyCode: 56, easyString: '8' };
485
+ Key.DIGIT9 = { code: 'Digit9', keyCode: 57, easyString: '9' };
486
+ Key.KEY_A = { code: 'KeyA', keyCode: 65, easyString: 'a' };
487
+ Key.KEY_B = { code: 'KeyB', keyCode: 66, easyString: 'b' };
488
+ Key.KEY_C = { code: 'KeyC', keyCode: 67, easyString: 'c' };
489
+ Key.KEY_D = { code: 'KeyD', keyCode: 68, easyString: 'd' };
490
+ Key.KEY_E = { code: 'KeyE', keyCode: 69, easyString: 'e' };
491
+ Key.KEY_F = { code: 'KeyF', keyCode: 70, easyString: 'f' };
492
+ Key.KEY_G = { code: 'KeyG', keyCode: 71, easyString: 'g' };
493
+ Key.KEY_H = { code: 'KeyH', keyCode: 72, easyString: 'h' };
494
+ Key.KEY_I = { code: 'KeyI', keyCode: 73, easyString: 'i' };
495
+ Key.KEY_J = { code: 'KeyJ', keyCode: 74, easyString: 'j' };
496
+ Key.KEY_K = { code: 'KeyK', keyCode: 75, easyString: 'k' };
497
+ Key.KEY_L = { code: 'KeyL', keyCode: 76, easyString: 'l' };
498
+ Key.KEY_M = { code: 'KeyM', keyCode: 77, easyString: 'm' };
499
+ Key.KEY_N = { code: 'KeyN', keyCode: 78, easyString: 'n' };
500
+ Key.KEY_O = { code: 'KeyO', keyCode: 79, easyString: 'o' };
501
+ Key.KEY_P = { code: 'KeyP', keyCode: 80, easyString: 'p' };
502
+ Key.KEY_Q = { code: 'KeyQ', keyCode: 81, easyString: 'q' };
503
+ Key.KEY_R = { code: 'KeyR', keyCode: 82, easyString: 'r' };
504
+ Key.KEY_S = { code: 'KeyS', keyCode: 83, easyString: 's' };
505
+ Key.KEY_T = { code: 'KeyT', keyCode: 84, easyString: 't' };
506
+ Key.KEY_U = { code: 'KeyU', keyCode: 85, easyString: 'u' };
507
+ Key.KEY_V = { code: 'KeyV', keyCode: 86, easyString: 'v' };
508
+ Key.KEY_W = { code: 'KeyW', keyCode: 87, easyString: 'w' };
509
+ Key.KEY_X = { code: 'KeyX', keyCode: 88, easyString: 'x' };
510
+ Key.KEY_Y = { code: 'KeyY', keyCode: 89, easyString: 'y' };
511
+ Key.KEY_Z = { code: 'KeyZ', keyCode: 90, easyString: 'z' };
512
+ Key.MULTIPLY = { code: 'NumpadMultiply', keyCode: 106, easyString: 'multiply' };
513
+ Key.ADD = { code: 'NumpadAdd', keyCode: 107, easyString: 'add' };
514
+ Key.DECIMAL = { code: 'NumpadDecimal', keyCode: 108, easyString: 'decimal' };
515
+ Key.SUBTRACT = { code: 'NumpadSubtract', keyCode: 109, easyString: 'subtract' };
516
+ Key.DIVIDE = { code: 'NumpadDivide', keyCode: 111, easyString: 'divide' };
517
+ Key.F1 = { code: 'F1', keyCode: 112, easyString: 'f1' };
518
+ Key.F2 = { code: 'F2', keyCode: 113, easyString: 'f2' };
519
+ Key.F3 = { code: 'F3', keyCode: 114, easyString: 'f3' };
520
+ Key.F4 = { code: 'F4', keyCode: 115, easyString: 'f4' };
521
+ Key.F5 = { code: 'F5', keyCode: 116, easyString: 'f5' };
522
+ Key.F6 = { code: 'F6', keyCode: 117, easyString: 'f6' };
523
+ Key.F7 = { code: 'F7', keyCode: 118, easyString: 'f7' };
524
+ Key.F8 = { code: 'F8', keyCode: 119, easyString: 'f8' };
525
+ Key.F9 = { code: 'F9', keyCode: 120, easyString: 'f9' };
526
+ Key.F10 = { code: 'F10', keyCode: 121, easyString: 'f10' };
527
+ Key.F11 = { code: 'F11', keyCode: 122, easyString: 'f11' };
528
+ Key.F12 = { code: 'F12', keyCode: 123, easyString: 'f12' };
529
+ Key.F13 = { code: 'F13', keyCode: 124, easyString: 'f13' };
530
+ Key.F14 = { code: 'F14', keyCode: 125, easyString: 'f14' };
531
+ Key.F15 = { code: 'F15', keyCode: 126, easyString: 'f15' };
532
+ Key.F16 = { code: 'F16', keyCode: 127, easyString: 'f16' };
533
+ Key.F17 = { code: 'F17', keyCode: 128, easyString: 'f17' };
534
+ Key.F18 = { code: 'F18', keyCode: 129, easyString: 'f18' };
535
+ Key.F19 = { code: 'F19', keyCode: 130, easyString: 'f19' };
536
+ Key.F20 = { code: 'F20', keyCode: 131, easyString: 'f20' };
537
+ Key.F21 = { code: 'F21', keyCode: 132, easyString: 'f21' };
538
+ Key.F22 = { code: 'F22', keyCode: 133, easyString: 'f22' };
539
+ Key.F23 = { code: 'F23', keyCode: 134, easyString: 'f23' };
540
+ Key.F24 = { code: 'F24', keyCode: 135, easyString: 'f24' };
541
+ Key.NUM_LOCK = { code: 'NumLock', keyCode: 144, easyString: 'numlock' };
542
+ Key.SEMICOLON = { code: 'Semicolon', keyCode: 186, easyString: ';' };
543
+ Key.EQUAL = { code: 'Equal', keyCode: 187, easyString: '=' };
544
+ Key.COMMA = { code: 'Comma', keyCode: 188, easyString: ',' };
545
+ Key.MINUS = { code: 'Minus', keyCode: 189, easyString: '-' };
546
+ Key.PERIOD = { code: 'Period', keyCode: 190, easyString: '.' };
547
+ Key.SLASH = { code: 'Slash', keyCode: 191, easyString: '/' };
548
+ Key.BACKQUOTE = { code: 'Backquote', keyCode: 192, easyString: '`' };
549
+ Key.INTL_RO = { code: 'IntlRo', keyCode: 193, easyString: 'intlro' };
550
+ Key.BRACKET_LEFT = { code: 'BracketLeft', keyCode: 219, easyString: '[' };
551
+ Key.BACKSLASH = { code: 'Backslash', keyCode: 220, easyString: '\\' };
552
+ Key.BRACKET_RIGHT = { code: 'BracketRight', keyCode: 221, easyString: ']' };
553
+ Key.QUOTE = { code: 'Quote', keyCode: 222, easyString: '\'' };
554
+ Key.INTL_BACKSLASH = { code: 'IntlBackslash', keyCode: 229, easyString: 'intlbackslash' };
555
+ Key.INTL_YEN = { code: 'IntlYen', keyCode: 255, easyString: 'intlyen' };
556
+ Key.MAX_KEY_CODE = Key.INTL_YEN.keyCode;
557
+ })(Key || (Key = {}));
558
+ /* -------------------- Initialize the static key mappings -------------------- */
559
+ (() => {
560
+ // Set the default key mappings from the constants in the Key namespace
561
+ Object.keys(Key).map(prop => Reflect.get(Key, prop)).filter(key => Key.isKey(key)).forEach(key => {
562
+ CODE_TO_KEY[key.code] = key;
563
+ KEY_CODE_TO_KEY[key.keyCode] = key;
564
+ EASY_TO_KEY[key.easyString] = key;
565
+ });
566
+ // Set additional key mappings
567
+ CODE_TO_KEY['Numpad0'] = Key.DIGIT0;
568
+ KEY_CODE_TO_KEY[96] = Key.DIGIT0;
569
+ CODE_TO_KEY['Numpad1'] = Key.DIGIT1;
570
+ KEY_CODE_TO_KEY[97] = Key.DIGIT1;
571
+ CODE_TO_KEY['Numpad2'] = Key.DIGIT2;
572
+ KEY_CODE_TO_KEY[98] = Key.DIGIT2;
573
+ CODE_TO_KEY['Numpad3'] = Key.DIGIT3;
574
+ KEY_CODE_TO_KEY[99] = Key.DIGIT3;
575
+ CODE_TO_KEY['Numpad4'] = Key.DIGIT4;
576
+ KEY_CODE_TO_KEY[100] = Key.DIGIT4;
577
+ CODE_TO_KEY['Numpad5'] = Key.DIGIT5;
578
+ KEY_CODE_TO_KEY[101] = Key.DIGIT5;
579
+ CODE_TO_KEY['Numpad6'] = Key.DIGIT6;
580
+ KEY_CODE_TO_KEY[102] = Key.DIGIT6;
581
+ CODE_TO_KEY['Numpad7'] = Key.DIGIT7;
582
+ KEY_CODE_TO_KEY[103] = Key.DIGIT7;
583
+ CODE_TO_KEY['Numpad8'] = Key.DIGIT8;
584
+ KEY_CODE_TO_KEY[104] = Key.DIGIT8;
585
+ CODE_TO_KEY['Numpad9'] = Key.DIGIT9;
586
+ KEY_CODE_TO_KEY[105] = Key.DIGIT9;
587
+ CODE_TO_KEY['NumpadEnter'] = Key.ENTER;
588
+ CODE_TO_KEY['NumpadEqual'] = Key.EQUAL;
589
+ CODE_TO_KEY['MetaLeft'] = Key.OS_LEFT; // Chrome, Safari
590
+ KEY_CODE_TO_KEY[224] = Key.OS_LEFT; // Firefox on Mac
591
+ CODE_TO_KEY['MetaRight'] = Key.OS_RIGHT; // Chrome, Safari
592
+ KEY_CODE_TO_KEY[93] = Key.OS_RIGHT; // Chrome, Safari, Edge
593
+ KEY_CODE_TO_KEY[225] = Key.ALT_RIGHT; // Linux
594
+ KEY_CODE_TO_KEY[110] = Key.DECIMAL; // Mac, Windows
595
+ KEY_CODE_TO_KEY[59] = Key.SEMICOLON; // Firefox
596
+ KEY_CODE_TO_KEY[61] = Key.EQUAL; // Firefox
597
+ KEY_CODE_TO_KEY[173] = Key.MINUS; // Firefox
598
+ KEY_CODE_TO_KEY[226] = Key.BACKSLASH; // Chrome, Edge on Windows
599
+ KEY_CODE_TO_KEY[60] = Key.BACKSLASH; // Firefox on Linux
600
+ // Set the modifier keys
601
+ MODIFIERS.push(...[Key.ALT_LEFT, Key.ALT_RIGHT, Key.CONTROL_LEFT, Key.CONTROL_RIGHT, Key.OS_LEFT, Key.OS_RIGHT, Key.SHIFT_LEFT, Key.SHIFT_RIGHT]);
602
+ })();
603
+ export var KeysOrKeyCodes;
604
+ (function (KeysOrKeyCodes) {
605
+ KeysOrKeyCodes.toKeyCode = (keyOrKeyCode) => keyOrKeyCode instanceof KeyCode ? keyOrKeyCode : KeyCode.createKeyCode({ first: keyOrKeyCode });
606
+ KeysOrKeyCodes.toKeyCodes = (keysOrKeyCodes) => {
607
+ if (keysOrKeyCodes instanceof KeyCode) {
608
+ return [keysOrKeyCodes];
609
+ }
610
+ else if (Array.isArray(keysOrKeyCodes)) {
611
+ return keysOrKeyCodes.slice().map(KeysOrKeyCodes.toKeyCode);
612
+ }
613
+ return [KeysOrKeyCodes.toKeyCode(keysOrKeyCodes)];
614
+ };
615
+ })(KeysOrKeyCodes || (KeysOrKeyCodes = {}));
616
+ //# sourceMappingURL=keys.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"keys.js","sourceRoot":"","sources":["../../../src/browser/keyboard/keys.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ export * from './locale-protocol.js';
2
+ export * from './locale-manager.js';