- fixed Typescript declaration
- added Typescript declarations
- added instanceId method to fsm object
- handle only
Invalid event in current state
thrown by own instance
- set
final
configuration option type checking to optional
- added intellisense type checking support
- proper handling of subsequent inter state transitions (reported in #70)
- gracefully handle invalid (initial) state (reported in #65)
- improved error reporting:
Previous transition pending
error thrown when one or more intr-state tansitions pending, includes also the details of the pending transitionsPrevious inter-state transition start
error when another inter-state transition has already started.
- conditional pseudo states are silent and do not emit events or call
onenter
andonentered
- document event emiter functionality
- bind condition function to
target
(@yarandoo)
- custom error handler (@yarandoo)
- added emitter tests to runner
- upgraded lodash and stampit dependencies
- dropped support for node 0.10 and 0.12
- added documentation for common methods
- dropped iojs tests
- added custom callback prefix support
- FSM target is EventEmitter
- Reimplemented library using composable factories (aka stampit)
- Condition calback returns state name in conditional transitions
- pass options.res corectly in conditional transitions
- added final configuration property
- added isFinal state machine object function
- add captureStackTrace and expose FsmError (dsuket)
- Added support for conditional transitions
- Added hasState method
- Added promise library support and updated dependencies
- Added costom error with properties trigger and current to improve debugging
- Added transition shortcut
{ name: 'event', from: ['state1', 'state2'] }
equivalent with:
{ name: 'event', from: 'state1' }
{ name: 'event', from: 'state2' }
- Added option to pass cleaned values to promises add by the fsm user
- Added deocumentation on how to pass valuess between callbacks
- Improved transition lifecycle documetation and tests
- Added graceful error recovery documentation and tests
- Make properties writable
- Tested agains lie and Q libraries
- Fixed warnings with Bluebird in debug mode
- Added generic event hooks
- Updated dependency on es6-promise
- Added configurable support for promise libraries
- Tested against Bluebird, RSVP and when libraries
- Added
onentered{stateName}
callback