Skip to main content
Glama
delay.ts•2.29 kB
import { asyncScheduler } from '../scheduler/async'; import { MonoTypeOperatorFunction, SchedulerLike } from '../types'; import { delayWhen } from './delayWhen'; import { timer } from '../observable/timer'; /** * Delays the emission of items from the source Observable by a given timeout or * until a given Date. * * <span class="informal">Time shifts each item by some specified amount of * milliseconds.</span> * * ![](delay.svg) * * If the delay argument is a Number, this operator time shifts the source * Observable by that amount of time expressed in milliseconds. The relative * time intervals between the values are preserved. * * If the delay argument is a Date, this operator time shifts the start of the * Observable execution until the given date occurs. * * ## Examples * * Delay each click by one second * * ```ts * import { fromEvent, delay } from 'rxjs'; * * const clicks = fromEvent(document, 'click'); * const delayedClicks = clicks.pipe(delay(1000)); // each click emitted after 1 second * delayedClicks.subscribe(x => console.log(x)); * ``` * * Delay all clicks until a future date happens * * ```ts * import { fromEvent, delay } from 'rxjs'; * * const clicks = fromEvent(document, 'click'); * const date = new Date('March 15, 2050 12:00:00'); // in the future * const delayedClicks = clicks.pipe(delay(date)); // click emitted only after that date * delayedClicks.subscribe(x => console.log(x)); * ``` * * @see {@link delayWhen} * @see {@link throttle} * @see {@link throttleTime} * @see {@link debounce} * @see {@link debounceTime} * @see {@link sample} * @see {@link sampleTime} * @see {@link audit} * @see {@link auditTime} * * @param due The delay duration in milliseconds (a `number`) or a `Date` until * which the emission of the source items is delayed. * @param scheduler The {@link SchedulerLike} to use for managing the timers * that handle the time-shift for each item. * @return A function that returns an Observable that delays the emissions of * the source Observable by the specified timeout or Date. */ export function delay<T>(due: number | Date, scheduler: SchedulerLike = asyncScheduler): MonoTypeOperatorFunction<T> { const duration = timer(due, scheduler); return delayWhen(() => duration); }

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/samihalawa/brevo-mcp'

If you have feedback or need assistance with the MCP directory API, please join our Discord server