Class: PageStateManagerImpl<S>
Defined in: packages/core/src/page/state/PageStateManagerImpl.ts:22
The implementation of the PageStateManager interface.
Extends
Type Parameters
• S extends PageState
= {}
Constructors
new PageStateManagerImpl()
new PageStateManagerImpl<
S
>(dispatcher
):PageStateManagerImpl
<S
>
Defined in: packages/core/src/page/state/PageStateManagerImpl.ts:40
Initializes the page state manager.
Parameters
dispatcher
Dispatcher fires events to app.
Returns
Overrides
Properties
onChange()?
optional
onChange: (newState
) =>void
Defined in: packages/core/src/page/state/PageStateManager.ts:7
Parameters
newState
S
Returns
void
Inherited from
Accessors
$dependencies
Get Signature
get
static
$dependencies(): typeofDispatcher
[]
Defined in: packages/core/src/page/state/PageStateManagerImpl.ts:31
Returns
typeof Dispatcher
[]
Methods
_callOnChangeCallback()
_callOnChangeCallback(
newState
):void
Defined in: packages/core/src/page/state/PageStateManagerImpl.ts:175
Call registered callback function on (@link onChange) with newState.
Parameters
newState
S
Returns
void
_eraseExcessHistory()
_eraseExcessHistory():
void
Defined in: packages/core/src/page/state/PageStateManagerImpl.ts:157
Erase the oldest state from storage only if it exceed max defined size of history.
Returns
void
_pushToHistory()
_pushToHistory(
newState
):void
Defined in: packages/core/src/page/state/PageStateManagerImpl.ts:167
Push new state to history storage.
Parameters
newState
S
Returns
void
beginTransaction()
beginTransaction():
void
Defined in: packages/core/src/page/state/PageStateManagerImpl.ts:106
Starts queueing state patches off the main state. While the transaction
is active every setState
call has no effect on the current state.
Note that call to getState
after the transaction has begun will
return state as it was before the transaction.
Returns
void
Overrides
PageStateManager
.beginTransaction
cancelTransaction()
cancelTransaction():
void
Defined in: packages/core/src/page/state/PageStateManagerImpl.ts:148
Cancels ongoing transaction. Uncommitted state changes are lost.
Returns
void
Overrides
PageStateManager
.cancelTransaction
clear()
clear():
void
Defined in: packages/core/src/page/state/PageStateManagerImpl.ts:49
Clears the state history.
Returns
void
Overrides
commitTransaction()
commitTransaction():
void
Defined in: packages/core/src/page/state/PageStateManagerImpl.ts:123
Applies queued state patches to the main state. All patches are squashed
and applied with one setState
call.
Returns
void
Overrides
PageStateManager
.commitTransaction
getAllStates()
getAllStates():
S
[]
Defined in: packages/core/src/page/state/PageStateManagerImpl.ts:92
Returns the recorded history of page states. The states will be chronologically sorted from the oldest to the newest.
Note that the implementation may limit the size of the recorded history, therefore the complete history may not be available.
Returns
S
[]
The recorded history of page states.
Overrides
getState()
getState():
S
Defined in: packages/core/src/page/state/PageStateManagerImpl.ts:85
Returns the current page state.
Returns
S
The current page state.
Overrides
getTransactionStatePatches()
getTransactionStatePatches(): (
null
|S
|Pick
<S
,any
>)[]
Defined in: packages/core/src/page/state/PageStateManagerImpl.ts:99
Returns queueing state patches off the main state from the begin of transaction.
Returns
(null
| S
| Pick
<S
, any
>)[]
State patches from the begin of transaction.
Overrides
PageStateManager
.getTransactionStatePatches
setState()
setState<
K
>(patchState
):number
|void
Defined in: packages/core/src/page/state/PageStateManagerImpl.ts:59
Sets a new page state by applying the provided patch to the current state.
Type Parameters
• K extends string
| number
| symbol
Parameters
patchState
null
| S
| Pick
<S
, K
>
Returns
number
| void