Debouncer API Reference
Throttler API Reference
Rate Limiter API Reference
- RateLimiterOptions
- RateLimiterState
- AsyncRateLimiterOptions
- AsyncRateLimiterState
- rateLimit
- asyncRateLimit
- RateLimiter
- AsyncRateLimiter
- AngularRateLimiterOptions
- AngularAsyncRateLimiterOptions
- AngularRateLimiter
- AngularAsyncRateLimiter
- injectRateLimiter
- injectRateLimitedSignal
- injectRateLimitedValue
- injectAsyncRateLimiter
Queue API Reference
injectDebouncer
Call Signature#
function injectDebouncer<TFn>(fn, options): AngularDebouncer<TFn>;Defined in: packages/angular-pacer/src/debouncer/injectDebouncer.ts:101
Creates and manages an Angular Debouncer in the current injection context.
Waits until calls stop for the configured delay, then runs the latest callback. Each new call restarts the delay.
Options and state#
Accepts static options or an options factory. Factories are read lazily, and signal dependencies update the existing core instance. Local options override provider defaults. Methods apply current options before executing and schedule work outside Angular's zone. The provided function runs inside Angular's zone.
Pass a selector to expose reactive core state through state(). Without a selector, state() returns {}; operations remain available on the ref.
Cleanup#
The default cleanup is to cancel pending execution. Set onUnmount to replace it.
Type Parameters#
TFn#
TFn extends AnyFunction
Parameters#
fn#
TFn
The callback invoked by the core utility.
options#
MaybeAccessor<AngularDebouncerOptions<TFn>>
Core options or a reactive factory returning them.
Returns#
AngularDebouncer<TFn>
A ref containing stable methods and a readonly selected-state signal.
Example#
// In a component or service injection context.
const utility = injectDebouncer(
(query: string) => console.log(query),
() => ({ wait: 250 }),
(state) => state.isPending,
)
utility.maybeExecute('search')
console.log(utility.state())Call Signature#
function injectDebouncer<TFn, TSelected>(
fn,
options,
selector): AngularDebouncer<TFn, TSelected>;Defined in: packages/angular-pacer/src/debouncer/injectDebouncer.ts:112
Creates an Angular Debouncer with a reactive selector result.
Type Parameters#
TFn#
TFn extends AnyFunction
TSelected#
TSelected
Parameters#
fn#
TFn
The callback invoked by the core utility.
options#
MaybeAccessor<AngularDebouncerOptions<TFn>>
Core options or a reactive options factory.
selector#
(state) => TSelected
Selects the state exposed by the returned state signal.
Returns#
AngularDebouncer<TFn, TSelected>
The utility ref with the selected state.