UNPKG

landstrasse

Version:

Strongly typed WAMP Client for browsers

32 lines 963 B
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); 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; } } exports.default = StateMachine; //# sourceMappingURL=index.js.map