import { from, fromEvent } from 'rxjs';
import { sequenceEqual, map, bufferCount, mergeMap, tap } from 'rxjs/operators';
const expectedSequence = from(['q', 'w', 'e', 'r', 't', 'y']);
const setResult = text => (document.getElementById('result').innerText = text);
fromEvent(document, 'keydown')
map((e: KeyboardEvent) => e.key),
sequenceEqual(expectedSequence),
tap(isItQwerty => setResult(isItQwerty ? 'WELL DONE!' : 'TYPE AGAIN!'))
.subscribe(e => console.log(`did you say qwerty? ${e}`));