Skip to main content
cngx-src documentation

createTransitionTracker

Functioncore/utils/async-state

projects/core/utils/transition-tracker.ts

Description#

Creates a reactive transition tracker for an AsyncStatus source.

Uses linkedSignal internally — when source() changes, previous holds the prior value and current holds the new one. Both are memoized signals.

Signature#

createTransitionTracker(source)

Parameters#

@paramsource

Reactive function that reads the current AsyncStatus.

const tracker = createTransitionTracker(() => this.state().status());

effect(() => {
const { current, previous } = tracker;
if (current() === previous()) return; // no change — deduplicated by linkedSignal
if (current() === 'success') { ... }
});

Returns#

StatusTransition