MCPcopy Index your code
hub / github.com/angular/angular / _getEventFullKey

Method _getEventFullKey

modules/playground/src/key_events/main.ts:50–75  ·  view source on GitHub ↗

* Get a more readable version of current pressed keys. * @see KeyEventsPlugin.getEventFullKey

(event: KeyboardEvent)

Source from the content-addressed store, hash-verified

48 * @see KeyEventsPlugin.getEventFullKey
49 */
50 private static _getEventFullKey(event: KeyboardEvent): string {
51 const modifierKeys = ['alt', 'control', 'meta', 'shift'];
52 const modifierKeyGetters: {[key: string]: (event: KeyboardEvent) => boolean} = {
53 'alt': (event: KeyboardEvent) => event.altKey,
54 'control': (event: KeyboardEvent) => event.ctrlKey,
55 'meta': (event: KeyboardEvent) => event.metaKey,
56 'shift': (event: KeyboardEvent) => event.shiftKey,
57 };
58
59 let fullKey = '';
60 let key = event.key.toLowerCase();
61 if (key === ' ') {
62 key = 'space'; // for readability
63 } else if (key === '.') {
64 key = 'dot'; // because '.' is used as a separator in event names
65 }
66 modifierKeys.forEach((modifierName) => {
67 if (modifierName != key) {
68 const modifierGetter = modifierKeyGetters[modifierName];
69 if (modifierGetter(event)) {
70 fullKey += modifierName + '.';
71 }
72 }
73 });
74 return fullKey + key;
75 }
76}
77
78@NgModule({declarations: [KeyEventsApp], bootstrap: [KeyEventsApp], imports: [BrowserModule]})

Callers 1

onKeyDownMethod · 0.80

Calls 1

forEachMethod · 0.45

Tested by

no test coverage detected