Skip to content
main
Switch branches/tags
Code

Latest commit

 

Git stats

Files

Permalink
Failed to load latest commit information.
Type
Name
Latest commit message
Commit time
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

state-toggle

Build Coverage Downloads Size

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-toggle

Use

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) // => false

API

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

Functionenter.

enter()

Enter the state.

Context

If no ctx was given to toggle, the context object (this) of enter() is used to toggle.

Returns

Functionexit.

exit()

Exit the state, reverting key to the value it had before entering.

License

MIT © Titus Wormer

About

Enter/exit a state

Topics

Resources

License

Stars

Watchers

Forks

Sponsor this project

 

Packages

No packages published