Skip to content

Instantly share code, notes, and snippets.

@dominique-mueller
Created March 24, 2022 19:50
Show Gist options
  • Save dominique-mueller/d8622a10bf40849958ddab7dc00bcf8a to your computer and use it in GitHub Desktop.
Save dominique-mueller/d8622a10bf40849958ddab7dc00bcf8a to your computer and use it in GitHub Desktop.
delayAtLeast RxJS Pipe
import { combineLatest, map, Observable, timer } from 'rxjs';
/**
* Delay at least (RxJS operator)
*
* @param delayInMs Delay in ms
*/
export const delayAtLeast = <T>(delayInMs: number) => {
return (observable: Observable<T>) => {
return combineLatest([timer(delayInMs), observable]).pipe(
map(([, observableResult]) => {
return observableResult;
}),
);
};
};
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment