UNPKG

symflow

Version:

SymFlow is a powerful workflow and state machine engine for Node.js, inspired by Symfony Workflow. It allows you to define workflows, transition entities between states, and optionally log audit trails.

19 lines 827 B
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.StateMachine = void 0; const symflow_1 = require("./symflow"); class StateMachine extends symflow_1.Symflow { constructor(definition, emitter) { if (Array.isArray(definition.initialState)) { throw new Error('❌ StateMachine must have a string `initialState`, not an array.'); } for (const [name, transition] of Object.entries(definition.transitions)) { if (Array.isArray(transition.from) || Array.isArray(transition.to)) { throw new Error(`❌ Transition "${name}" in a StateMachine must use single 'from' and 'to' strings.`); } } super(definition, emitter); } } exports.StateMachine = StateMachine; //# sourceMappingURL=state-machine.js.map