Skip to main content
Glama
auditTime.ts•2.35 kB
import { asyncScheduler } from '../scheduler/async'; import { audit } from './audit'; import { timer } from '../observable/timer'; import { MonoTypeOperatorFunction, SchedulerLike } from '../types'; /** * Ignores source values for `duration` milliseconds, then emits the most recent * value from the source Observable, then repeats this process. * * <span class="informal">When it sees a source value, it ignores that plus * the next ones for `duration` milliseconds, and then it emits the most recent * value from the source.</span> * * ![](auditTime.png) * * `auditTime` is similar to `throttleTime`, but emits the last value from the * silenced time window, instead of the first value. `auditTime` emits the most * recent value from the source Observable on the output Observable as soon as * its internal timer becomes disabled, and ignores source values while the * timer is enabled. Initially, the timer is disabled. As soon as the first * source value arrives, the timer is enabled. After `duration` milliseconds (or * the time unit determined internally by the optional `scheduler`) has passed, * the timer is disabled, then the most recent source value is emitted on the * output Observable, and this process repeats for the next source value. * Optionally takes a {@link SchedulerLike} for managing timers. * * ## Example * * Emit clicks at a rate of at most one click per second * * ```ts * import { fromEvent, auditTime } from 'rxjs'; * * const clicks = fromEvent(document, 'click'); * const result = clicks.pipe(auditTime(1000)); * result.subscribe(x => console.log(x)); * ``` * * @see {@link audit} * @see {@link debounceTime} * @see {@link delay} * @see {@link sampleTime} * @see {@link throttleTime} * * @param duration Time to wait before emitting the most recent source value, * measured in milliseconds or the time unit determined internally by the * optional `scheduler`. * @param scheduler The {@link SchedulerLike} to use for managing the timers * that handle the rate-limiting behavior. * @return A function that returns an Observable that performs rate-limiting of * emissions from the source Observable. */ export function auditTime<T>(duration: number, scheduler: SchedulerLike = asyncScheduler): MonoTypeOperatorFunction<T> { return audit(() => timer(duration, scheduler)); }

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