state-toggle
Enter/exit a state.
Install
This package is ESM only: Node 12+ is needed to use it and it must be imported
instead of required.
npm:
npm install state-toggleUse
import {stateToggle} from 'state-toggle'
var ctx = {on: false}
var enter = stateToggle('on', ctx.on, ctx)
var exit
// Entering:
exit = enter()
console.log(ctx.on) // => true
// Exiting:
exit()
console.log(ctx.on) // => falseAPI
This package exports the following identifiers: stateToggle.
There is no default export.
toggle(key, initial[, ctx])
Create a toggle, which when entering toggles key on ctx (or this, if ctx
is not given) to !initial, and when exiting, sets key on the context back to
the value it had before entering.
Returns
Function — enter.
enter()
Enter the state.
Context
If no ctx was given to toggle, the context object (this) of enter() is
used to toggle.
Returns
Function — exit.
exit()
Exit the state, reverting key to the value it had before entering.