StoreMachine
Defined in: store-machine.ts:8
Lifecycle interface defines the methods for managing state transitions and effects. Implemented by StateMachine and StoreMachine to handle state changes. It provides a structured way to handle state changes, including guards, effects, and notifications.
Lifecycle steps:
transition(ev)
- Triggers the transition lifecycle, handling all steps for processing a change event.guard(ev)
- Checks if the transition is allowed.handle(ev)
- Processes the event, may abort if returns undefined.before(ev)
- Prepares for state change, may abort if returns undefined.update(ev)
- Applies the state update.effect(ev)
- Runs side effects, calls leave/enter hooks.leave(ev)
- Called when leaving the previous state.enter(ev)
- Called when entering the new state.notify(ev)
- Notifies subscribers of the change.after(ev)
- Final hook after transition completes.
Extends
Section titled “Extends”Type Parameters
Section titled “Type Parameters”Type Parameter | Default type |
---|---|
T | - |
TR extends StoreTransitionRecord <T > | StoreTransitionRecord <T > |
Methods
Section titled “Methods”transition()
Section titled “transition()”transition(
change
:StoreChange
):void
Defined in: event-lifecycle.ts:28
Triggers the transition lifecycle, handling all steps for processing a change event.
Parameters
Section titled “Parameters”Parameter | Type |
---|---|
change | StoreChange |
Returns
Section titled “Returns”void
Inherited from
Section titled “Inherited from”guard()
Section titled “guard()”guard(
ev
:StoreChange
):boolean
Defined in: event-lifecycle.ts:32
Checks if a transition event is allowed to proceed. Returns true to continue, false to abort.
Parameters
Section titled “Parameters”Parameter | Type |
---|---|
ev | StoreChange |
Returns
Section titled “Returns”boolean
Inherited from
Section titled “Inherited from”handle()
Section titled “handle()”handle(
ev
:StoreChange
):undefined
|StoreChange
<T
>
Defined in: event-lifecycle.ts:36
Processes the event. May abort the transition if returns undefined.
Parameters
Section titled “Parameters”Parameter | Type |
---|---|
ev | StoreChange |
Returns
Section titled “Returns”undefined
| StoreChange
<T
>
Inherited from
Section titled “Inherited from”before()
Section titled “before()”before(
ev
:StoreChange
):undefined
|StoreChange
<T
>
Defined in: event-lifecycle.ts:41
Called before the transition is applied. May abort if returns undefined. (Represents a beforeTransition hook, not state entry/exit.)
Parameters
Section titled “Parameters”Parameter | Type |
---|---|
ev | StoreChange |
Returns
Section titled “Returns”undefined
| StoreChange
<T
>
Inherited from
Section titled “Inherited from”update()
Section titled “update()”update(
ev
:StoreChange
):void
Defined in: event-lifecycle.ts:45
Applies the state update.
Parameters
Section titled “Parameters”Parameter | Type |
---|---|
ev | StoreChange |
Returns
Section titled “Returns”void
Inherited from
Section titled “Inherited from”effect()
Section titled “effect()”effect(
ev
:StoreChange
):void
Defined in: event-lifecycle.ts:49
Runs side effects for the transition. By default, calls leave
and enter
hooks.
Parameters
Section titled “Parameters”Parameter | Type |
---|---|
ev | StoreChange |
Returns
Section titled “Returns”void
Inherited from
Section titled “Inherited from”leave()
Section titled “leave()”leave(
ev
:StoreChange
):void
Defined in: event-lifecycle.ts:53
Called when leaving the previous state.
Parameters
Section titled “Parameters”Parameter | Type |
---|---|
ev | StoreChange |
Returns
Section titled “Returns”void
Inherited from
Section titled “Inherited from”enter()
Section titled “enter()”enter(
ev
:StoreChange
):void
Defined in: event-lifecycle.ts:57
Called when entering the new state.
Parameters
Section titled “Parameters”Parameter | Type |
---|---|
ev | StoreChange |
Returns
Section titled “Returns”void
Inherited from
Section titled “Inherited from”notify()
Section titled “notify()”notify(
ev
:StoreChange
):void
Defined in: event-lifecycle.ts:61
Notifies subscribers of the change.
Parameters
Section titled “Parameters”Parameter | Type |
---|---|
ev | StoreChange |
Returns
Section titled “Returns”void
Inherited from
Section titled “Inherited from”after()
Section titled “after()”after(
ev
:StoreChange
):void
Defined in: event-lifecycle.ts:65
Final hook after transition completes. (Represents afterTransition, not state entry/exit.)
Parameters
Section titled “Parameters”Parameter | Type |
---|---|
ev | StoreChange |
Returns
Section titled “Returns”void
Inherited from
Section titled “Inherited from”getState()
Section titled “getState()”getState():
T
Defined in: store-machine.ts:12
Returns
Section titled “Returns”T
getChange()
Section titled “getChange()”getChange():
StoreChange
<T
>
Defined in: store-machine.ts:13
Returns
Section titled “Returns”StoreChange
<T
>
dispatch()
Section titled “dispatch()”dispatch<
E
>(type
:E
, …params
:ExtractStoreParams
<TR
,E
>):void
Defined in: store-machine.ts:14
Type Parameters
Section titled “Type Parameters”Type Parameter |
---|
E extends string |
Parameters
Section titled “Parameters”Parameter | Type |
---|---|
type | E |
…params | ExtractStoreParams <TR , E > |
Returns
Section titled “Returns”void
resolveExit()
Section titled “resolveExit()”resolveExit(
ev
:StoreChange
<T
>):undefined
|StoreChange
<T
>
Defined in: store-machine.ts:19
Parameters
Section titled “Parameters”Parameter | Type |
---|---|
ev | StoreChange <T > |
Returns
Section titled “Returns”undefined
| StoreChange
<T
>
Properties
Section titled “Properties”Property | Type |
---|---|
actions | TR |