UNPKG

landstrasse

Version:

Strongly typed WAMP Client for browsers

30 lines 883 B
class StateMachine { constructor(initialState, transitionMap) { Object.defineProperty(this, "currentState", { enumerable: true, configurable: true, writable: true, value: void 0 }); Object.defineProperty(this, "transitionMap", { enumerable: true, configurable: true, writable: true, value: void 0 }); this.currentState = initialState; this.transitionMap = transitionMap; } get current() { return this.currentState; } update(args) { const stateTransition = this.transitionMap.get(this.currentState); if (!stateTransition) { return; } this.currentState = stateTransition(args) || this.currentState; } } export default StateMachine; //# sourceMappingURL=index.js.map