CngxStepperPresenter
projects/common/stepper/presenter.directive.ts
Import#
import { CngxStepperPresenter } from '@cngx/common/stepper'
Description#
Stepper presenter - the brain of every stepper / wizard flow.
Holds the active-step model, registry, linear policy, orientation,
and commit-controller lifecycle. Provides CNGX_STEPPER_HOST
for atom registration and CNGX_STATEFUL so transition
bridges (<cngx-toast-on />, <cngx-banner-on />) compose without
explicit [state] wiring.
Sheriff: common Level 2. Pure directive - zero template, zero CSS.
Level-4 organisms compose this via hostDirectives.
Metadata#
Providers#
CNGX_STEPPER_HOST- useExisting
CngxStepperPresenter CNGX_STATEFUL- useExisting
CngxStepperPresenter
Relationships
Depends on2
Index#
Properties
Outputs
Inputs#
'optimistic' | 'pessimistic' | undefinedundefined, { alias: 'commitMode', }'horizontal' | 'vertical' | undefinedundefined, { alias: 'orientation', }Outputs#
Instance Properties#
StatusTransitionReactive current/previous pair for the commit-state status. Skin
sub-components mount a <span cngxLiveRegion> reading this
tracker. Allocated once per presenter - the underlying
linkedSignal is shared across all consumers.
createTransitionTracker(() =>
this.commitController.state.status(),
)SignalStep index the user is committing to. Tracked separately from
state.data() because the AsyncState data slot only updates on
success. Drives per-step aria-busy in the organism.
this.commitController.intendedValueSignal{@inheritDoc CngxStepperHost.lastFailedIndex}
this.lastFailedIndexState.asReadonly()Signal{@inheritDoc CngxStepperHost.originIndexDuringCommit}
this.originIndexDuringCommitState.asReadonly()CngxAsyncStateProducer surface for the CNGX_STATEFUL bridge contract.
this.commitController.stateMethods#
register(handle: CngxStepRegistration, parentId: string | null)string | null= null