import { fromEvent, EMPTY, interval, merge, timer } from 'rxjs';
import { scan, startWith, switchMap, mapTo, delay } from 'rxjs/operators';
const DELAY=1000;
const button = document.createElement('button');
button.textContent = 'Click me';
document.documentElement.appendChild(button);
const click$ = fromEvent(button, 'click').pipe(
mapTo(false),
)
const unclick$ = click$.pipe(
delay(DELAY),
mapTo(true),
)
merge(click$, unclick$).pipe(
startWith(true),
switchMap(event => event ? timer(0, 1000) : EMPTY),
scan(acc => acc + 1, 0),
)
это если я правильно понял
станавливатьна 300мс
означает "делать паузу"