UNPKG

@lifaon/rx-js-light

Version:

Blazing fast Observables

22 lines (21 loc) 534 B
import {createImmediate} from "../../../../../../misc/timer/create-immediate.mjs"; export function debounceImmediateObservable(subscribe) { return emit => { let abortTimeout = null; const unsubscribe = subscribe(value => { if (abortTimeout !== null) { abortTimeout(); } abortTimeout = createImmediate(() => { abortTimeout = null; emit(value); }); }); return () => { unsubscribe(); if (abortTimeout !== null) { abortTimeout(); } }; }; }