{"_id":"machina","_rev":"89-158ec53c72a042cf7975dfaf0fbdaf82","name":"machina","dist-tags":{"latest":"8.2.0"},"versions":{"0.2.0":{"name":"machina","version":"0.2.0","keywords":["state machine","finite state machine","async","workflow","state","machina"],"author":{"url":"http://freshbrewedcode.com/jimcowart","name":"Jim Cowart","email":"jim@ifandelse.com"},"_id":"machina@0.2.0","maintainers":[{"name":"ifandelse","email":"jim@ifandelse.com"}],"contributors":[{"url":"http://freshbrewedcode.com/jimcowart","name":"Jim Cowart","email":"jim@ifandelse.com"}],"homepage":"http://machina-js.org/","bugs":{"url":"http://github.com/ifandelse/machina.js/issues","email":"jim@ifandelse.com"},"dist":{"shasum":"c70f0dd7be9e6b677e1b5794254160f3a4c5b42e","tarball":"https://registry.npmjs.org/machina/-/machina-0.2.0.tgz","integrity":"sha512-QbcaUOhogA8jNzZDGm1UYZHVwz5PEz2lMW5bKJ4aCWbT53a4QkyCD7vI2B0QEiI78MzdkF2GVJ9Vie4Exg6XSA==","signatures":[{"sig":"MEUCIDpS5kL4zYYnUPR8v3KyysCaAXgG1jem3oaKxwhcADAhAiEAxQ7T1WJlc1AlB8sMBcA7TJ0AiSJ0t6ibV9Awe7AN1Cs=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}]},"main":"./machina.js","engines":{"node":">=0.4.0"},"_npmUser":{"name":"ifandelse","email":"jim@ifandelse.com"},"licenses":[{"url":"http://www.opensource.org/licenses/mit-license.php","type":"MIT"},{"url":"http://www.opensource.org/licenses/gpl-3.0.html","type":"GPL"}],"repository":{"url":"git://github.com/ifandelse/machina.js.git","type":"git"},"_npmVersion":"1.1.0-beta-4","description":"A library for creating powerful and flexible finite state machines.  Loosely inspired by Erlang/OTP's gen_fsm behavior.","directories":{"lib":"./"},"_nodeVersion":"v0.6.6","dependencies":{"underscore":">=1.1.7"},"_defaultsLoaded":true,"devDependencies":{},"_engineSupported":true,"bundleDependencies":["underscore"]},"0.2.1":{"name":"machina","version":"0.2.1","keywords":["state machine","finite state machine","fsm","async","workflow","state","machina","machina-js","machina.js","machinajs"],"author":{"url":"http://freshbrewedcode.com/jimcowart","name":"Jim Cowart"},"_id":"machina@0.2.1","maintainers":[{"name":"ifandelse","email":"jim@ifandelse.com"}],"contributors":[{"url":"http://freshbrewedcode.com/jimcowart","name":"Jim Cowart","email":"jim@ifandelse.com"}],"homepage":"http://machina-js.org/","bugs":{"url":"http://github.com/ifandelse/machina.js/issues","email":"jim@ifandelse.com"},"dist":{"shasum":"7f5ccf164e354882b2e0a334b469de09820af45c","tarball":"https://registry.npmjs.org/machina/-/machina-0.2.1.tgz","integrity":"sha512-nTy+9BWSGFqxYTtIMrb/qHN2rgr70sRd6SmgkBWk9CnYutHniGxhlh5KGEvLEnFCps1Fr5QxwFEgUqr5Yj9V7Q==","signatures":[{"sig":"MEUCIHR1NVEII6S3XFMmhUsR7zSpaY5ot2Xr/Et2G2wbZuqCAiEAka7+yl0rX/+kpJ8Wa17qdyvVgcV4p3n4L9AmAINC5ik=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}]},"main":"lib/node/machina.js","engines":{"node":">=0.4.0"},"_npmUser":{"name":"ifandelse","email":"jim@ifandelse.com"},"licenses":[{"url":"http://www.opensource.org/licenses/mit-license.php","type":"MIT"},{"url":"http://www.opensource.org/licenses/gpl-3.0.html","type":"GPL"}],"repository":{"url":"git://github.com/ifandelse/machina.js.git","type":"git"},"_npmVersion":"1.1.61","description":"A library for creating powerful and flexible finite state machines.  Loosely inspired by Erlang/OTP's gen_fsm behavior.","directories":{"lib":"lib/node"},"dependencies":{"underscore":">=1.1.7"},"devDependencies":{},"bundleDependencies":["underscore"]},"0.2.2":{"name":"machina","version":"0.2.2","keywords":["state machine","finite state machine","fsm","async","workflow","state","machina","machina-js","machina.js","machinajs"],"author":{"url":"http://freshbrewedcode.com/jimcowart","name":"Jim Cowart"},"_id":"machina@0.2.2","maintainers":[{"name":"ifandelse","email":"jim@ifandelse.com"}],"contributors":[{"url":"http://freshbrewedcode.com/jimcowart","name":"Jim Cowart","email":"jim@ifandelse.com"}],"homepage":"http://machina-js.org/","bugs":{"url":"http://github.com/ifandelse/machina.js/issues","email":"jim@ifandelse.com"},"dist":{"shasum":"1d52fcb062bf6e0f60d7157eb6a2d51d3df86df2","tarball":"https://registry.npmjs.org/machina/-/machina-0.2.2.tgz","integrity":"sha512-dmwO308QzJOcm9HUK32b0NBjxQ0XBAyPHAn1Lb42T7qzIxz1JaI0oY7baKQPeut5tNYGFdaOaMrb8eyLyuyYAA==","signatures":[{"sig":"MEUCIQCRvjE59z0Q6grTF5lI9ja/BSWiarL/Sh1QA/dLmTVDsgIgbOrczN+7YTsBZEuwD/AtVuyekma3SU4P9/cHcsQvVZA=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}]},"main":"lib/node/machina.js","engines":{"node":">=0.4.0"},"_npmUser":{"name":"ifandelse","email":"jim@ifandelse.com"},"licenses":[{"url":"http://www.opensource.org/licenses/mit-license.php","type":"MIT"},{"url":"http://www.opensource.org/licenses/gpl-3.0.html","type":"GPL"}],"repository":{"url":"git://github.com/ifandelse/machina.js.git","type":"git"},"_npmVersion":"1.1.61","description":"A library for creating powerful and flexible finite state machines.  Loosely inspired by Erlang/OTP's gen_fsm behavior.","directories":{"lib":"lib/node"},"dependencies":{"underscore":">=1.1.7"},"devDependencies":{},"bundleDependencies":["underscore"]},"0.3.0":{"name":"machina","version":"0.3.0","keywords":["state machine","finite state machine","fsm","async","workflow","state","machina","machina-js","machina.js","machinajs"],"author":{"url":"http://freshbrewedcode.com/jimcowart","name":"Jim Cowart"},"_id":"machina@0.3.0","maintainers":[{"name":"ifandelse","email":"jim@ifandelse.com"}],"contributors":[{"url":"http://freshbrewedcode.com/jimcowart","name":"Jim Cowart","email":"jim@ifandelse.com"},{"url":"http://code.dougneiner.com","name":"Doug Neiner","email":"doug@dougneiner.com"}],"homepage":"http://machina-js.org/","bugs":{"url":"http://github.com/ifandelse/machina.js/issues","email":"jim@ifandelse.com"},"dist":{"shasum":"2e5764250327d3c974485a5eb41b84b8e1a536b9","tarball":"https://registry.npmjs.org/machina/-/machina-0.3.0.tgz","integrity":"sha512-GKANnvYFIkbCjm817wXVbYLWIrsTu5Jc1VUTHzBaM6uSgSQudVxN2HAvbTfkQ1G7YLB2LfJNFut0/jUJLW2dFg==","signatures":[{"sig":"MEUCIQCHgUFYPGvlb+W1pKvMoR7Q6UUnH0V5V2ELLCzGwMpMSAIgQV+5Y86EBPyB3dq+39duyprQkkWBO35bH433fnMH3io=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}]},"main":"lib/node/machina.js","engines":{"node":">=0.4.0"},"_npmUser":{"name":"ifandelse","email":"jim@ifandelse.com"},"licenses":[{"url":"http://www.opensource.org/licenses/mit-license.php","type":"MIT"},{"url":"http://www.opensource.org/licenses/gpl-3.0.html","type":"GPL"}],"repository":{"url":"git://github.com/ifandelse/machina.js.git","type":"git"},"_npmVersion":"1.1.61","description":"A library for creating powerful and flexible finite state machines.  Loosely inspired by Erlang/OTP's gen_fsm behavior.","directories":{"lib":"lib/node"},"dependencies":{"underscore":">=1.1.7"},"devDependencies":{},"bundleDependencies":["underscore"]},"0.3.1":{"name":"machina","version":"0.3.1","keywords":["state machine","finite state machine","fsm","async","workflow","state","machina","machina-js","machina.js","machinajs"],"author":{"url":"http://freshbrewedcode.com/jimcowart","name":"Jim Cowart"},"_id":"machina@0.3.1","maintainers":[{"name":"ifandelse","email":"jim@ifandelse.com"}],"contributors":[{"url":"http://freshbrewedcode.com/jimcowart","name":"Jim Cowart","email":"jim@ifandelse.com"},{"url":"http://code.dougneiner.com","name":"Doug Neiner","email":"doug@dougneiner.com"}],"homepage":"http://machina-js.org/","bugs":{"url":"http://github.com/ifandelse/machina.js/issues","email":"jim@ifandelse.com"},"dist":{"shasum":"fb0cc6f5e54060d4db0dce20337c0835b2454b8e","tarball":"https://registry.npmjs.org/machina/-/machina-0.3.1.tgz","integrity":"sha512-hgn8Bj4idztEqmIj80Aq0HN6n2TQ8bQ1938iqpcKAjrFx1nZ8vV7rwsRItvF4DW+qU0lBKfnlclXzQyJcnkzCQ==","signatures":[{"sig":"MEQCICtXuVX0++lwrGlMX4MzYbkotufzOLLzuRLJ6/mb8x2UAiAzDeSy9isorEkOb7n/dVZG/baDkNs1ZXEATsSGnon4DQ==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}]},"main":"lib/node/machina.js","engines":{"node":">=0.4.0"},"_npmUser":{"name":"ifandelse","email":"jim@ifandelse.com"},"licenses":[{"url":"http://www.opensource.org/licenses/mit-license.php","type":"MIT"},{"url":"http://www.opensource.org/licenses/gpl-3.0.html","type":"GPL"}],"repository":{"url":"git://github.com/ifandelse/machina.js.git","type":"git"},"_npmVersion":"1.1.61","description":"A library for creating powerful and flexible finite state machines.  Loosely inspired by Erlang/OTP's gen_fsm behavior.","directories":{"lib":"lib/node"},"dependencies":{"underscore":">=1.1.7"},"devDependencies":{},"bundleDependencies":["underscore"]},"0.3.2":{"name":"machina","version":"0.3.2","keywords":["state machine","finite state machine","fsm","async","workflow","state","machina","machina-js","machina.js","machinajs"],"author":{"url":"http://freshbrewedcode.com/jimcowart","name":"Jim Cowart"},"_id":"machina@0.3.2","maintainers":[{"name":"ifandelse","email":"jim@ifandelse.com"}],"contributors":[{"url":"http://freshbrewedcode.com/jimcowart","name":"Jim Cowart","email":"jim@ifandelse.com"},{"url":"http://code.dougneiner.com","name":"Doug Neiner","email":"doug@dougneiner.com"},{"url":"https://github.com/fwg","name":"Friedemann Altrock","email":"frodenius@gmail.com"}],"homepage":"http://machina-js.org/","bugs":{"url":"http://github.com/ifandelse/machina.js/issues","email":"jim@ifandelse.com"},"dist":{"shasum":"834bffbc2345ad7a791a18a9043f0947c067178d","tarball":"https://registry.npmjs.org/machina/-/machina-0.3.2.tgz","integrity":"sha512-9DrncqQ3/zTy0lRCkKrKsrQ1Wa91rFq6JsEtnuf0RgfmE+IxFzMtALQ6nqBTKSI5OS379Y34YtH4dBriqjOfwA==","signatures":[{"sig":"MEYCIQDJtGVXd6g5AO2av198IJduQe2W41wr3rpqu/3Ip7AmgQIhAOGpV7VAjbgBNHQIYxxhrzVVH+pUw62vSfzVpnKbfIh5","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}]},"main":"lib/machina.js","engines":{"node":">=0.4.0"},"_npmUser":{"name":"ifandelse","email":"jim@ifandelse.com"},"licenses":[{"url":"http://www.opensource.org/licenses/mit-license.php","type":"MIT"},{"url":"http://www.opensource.org/licenses/gpl-3.0.html","type":"GPL"}],"repository":{"url":"git://github.com/ifandelse/machina.js.git","type":"git"},"_npmVersion":"1.1.61","description":"A library for creating powerful and flexible finite state machines.  Loosely inspired by Erlang/OTP's gen_fsm behavior.","directories":{"lib":"lib"},"dependencies":{"underscore":">=1.1.7"},"devDependencies":{},"bundleDependencies":["underscore"]},"0.3.3":{"name":"machina","version":"0.3.3","keywords":["state machine","finite state machine","fsm","async","workflow","state","machina","machina-js","machina.js","machinajs"],"author":{"url":"http://freshbrewedcode.com/jimcowart","name":"Jim Cowart"},"_id":"machina@0.3.3","maintainers":[{"name":"ifandelse","email":"jim@ifandelse.com"}],"contributors":[{"url":"http://freshbrewedcode.com/jimcowart","name":"Jim Cowart","email":"jim@ifandelse.com"},{"url":"http://code.dougneiner.com","name":"Doug Neiner","email":"doug@dougneiner.com"},{"url":"https://github.com/fwg","name":"Friedemann Altrock","email":"frodenius@gmail.com"},{"url":"https://github.com/mtrimpe","name":"Michiel Trimpe","email":"michiel@trimpe.nl"}],"homepage":"http://machina-js.org/","bugs":{"url":"http://github.com/ifandelse/machina.js/issues","email":"jim@ifandelse.com"},"dist":{"shasum":"a40c73185e7409cc44ab55f66cf130e54fb2eaa2","tarball":"https://registry.npmjs.org/machina/-/machina-0.3.3.tgz","integrity":"sha512-UXt0FYioMOab9goH4luzGvdY81mioy1SPFSPZP8w5jL40LJ5bA1icTK2XlNcfTUWYiAMzdjiSerBAWm+YBADcw==","signatures":[{"sig":"MEQCIGPhNBCDf0Z3WlO4tvIgaOjuWdpvShIe8oTwDJ/7s73NAiAn99Pjmesm9BC/iR9/5BaivL1v63HPBOz0ff9ZYrvMZg==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}]},"main":"lib/machina.js","engines":{"node":">=0.4.0"},"_npmUser":{"name":"ifandelse","email":"jim@ifandelse.com"},"licenses":[{"url":"http://opensource.org/licenses/MIT","type":"MIT"},{"url":"http://opensource.org/licenses/GPL-2.0","type":"GPL"}],"repository":{"url":"git://github.com/ifandelse/machina.js.git","type":"git"},"_npmVersion":"1.1.61","description":"A library for creating powerful and flexible finite state machines.  Loosely inspired by Erlang/OTP's gen_fsm behavior.","directories":{"lib":"lib"},"dependencies":{"underscore":">=1.1.7"},"devDependencies":{},"bundleDependencies":["underscore"]},"0.3.4":{"name":"machina","version":"0.3.4","keywords":["state machine","finite state machine","fsm","async","workflow","state","machina","machina-js","machina.js","machinajs"],"author":{"url":"http://freshbrewedcode.com/jimcowart","name":"Jim Cowart"},"_id":"machina@0.3.4","maintainers":[{"name":"ifandelse","email":"jim@ifandelse.com"}],"contributors":[{"url":"http://freshbrewedcode.com/jimcowart","name":"Jim Cowart","email":"jim@ifandelse.com"},{"url":"http://code.dougneiner.com","name":"Doug Neiner","email":"doug@dougneiner.com"},{"url":"https://github.com/fwg","name":"Friedemann Altrock","email":"frodenius@gmail.com"},{"url":"https://github.com/mtrimpe","name":"Michiel Trimpe","email":"michiel@trimpe.nl"},{"url":"https://github.com/bmavity","name":"Brian Mavity"}],"homepage":"http://machina-js.org/","bugs":{"url":"http://github.com/ifandelse/machina.js/issues","email":"jim@ifandelse.com"},"dist":{"shasum":"82aca8997cd3454bd75bbb92590bfacd134d3c37","tarball":"https://registry.npmjs.org/machina/-/machina-0.3.4.tgz","integrity":"sha512-utyQCflHX9Qzx1Xf4mYYYAsH99tmFBuFMTOGCMZTjRtdnounclZ9Rt6JJSvwKHXjWHW9131cUPKqFDX/HHJW2g==","signatures":[{"sig":"MEYCIQDp24oTp61HGJj+hdMMJSpLvPIBhvBjKA4xIH4PQBE6agIhAN8OnOQCQJJvpNJ2tkz2favtDT9XNVGjNUy1wAPV3gFJ","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}]},"main":"lib/machina.js","_from":".","engines":{"node":">=0.4.0"},"_npmUser":{"name":"ifandelse","email":"jim@ifandelse.com"},"licenses":[{"url":"http://opensource.org/licenses/MIT","type":"MIT"},{"url":"http://opensource.org/licenses/GPL-2.0","type":"GPL"}],"repository":{"url":"git://github.com/ifandelse/machina.js.git","type":"git"},"_npmVersion":"1.2.14","description":"A library for creating powerful and flexible finite state machines.  Loosely inspired by Erlang/OTP's gen_fsm behavior.","directories":{"lib":"lib"},"dependencies":{"underscore":">=1.1.7"},"devDependencies":{},"bundleDependencies":["underscore"]},"0.3.5":{"name":"machina","version":"0.3.5","keywords":["state machine","finite state machine","fsm","async","workflow","state","machina","machina-js","machina.js","machinajs"],"author":{"url":"http://freshbrewedcode.com/jimcowart","name":"Jim Cowart"},"_id":"machina@0.3.5","maintainers":[{"name":"ifandelse","email":"jim@ifandelse.com"}],"contributors":[{"url":"http://freshbrewedcode.com/jimcowart","name":"Jim Cowart","email":"jim@ifandelse.com"},{"url":"http://code.dougneiner.com","name":"Doug Neiner","email":"doug@dougneiner.com"},{"url":"https://github.com/fwg","name":"Friedemann Altrock","email":"frodenius@gmail.com"},{"url":"https://github.com/mtrimpe","name":"Michiel Trimpe","email":"michiel@trimpe.nl"},{"url":"https://github.com/bmavity","name":"Brian Mavity"}],"homepage":"http://machina-js.org/","bugs":{"url":"http://github.com/ifandelse/machina.js/issues","email":"jim@ifandelse.com"},"dist":{"shasum":"81976dc2831fffa655571c769901e53227636df6","tarball":"https://registry.npmjs.org/machina/-/machina-0.3.5.tgz","integrity":"sha512-sJN7k2aOb85+XoqoAWg280pAvr+M+LUxxBo4MQUMorRWR+ircn84fbuZDHs+51D5l7RaCPdDOPXHwlekPz2VDQ==","signatures":[{"sig":"MEYCIQCpJsMK5HSO0XwlfgEBiH+wSVYPij7VAmmuISSM6fQL4QIhANJ5rNfUUOkCtNvIG7STnp9jJHh+IHEafcSBOkfrMLMH","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}]},"main":"lib/machina.js","_from":".","engines":{"node":">=0.4.0"},"scripts":{"test":"mocha ./spec/*.js","build":"gulp","start":"gulp server"},"_npmUser":{"name":"ifandelse","email":"jim@ifandelse.com"},"licenses":[{"url":"http://opensource.org/licenses/MIT","type":"MIT"},{"url":"http://opensource.org/licenses/GPL-2.0","type":"GPL"}],"repository":{"url":"git://github.com/ifandelse/machina.js.git","type":"git"},"_npmVersion":"1.3.2","description":"A library for creating powerful and flexible finite state machines.  Loosely inspired by Erlang/OTP's gen_fsm behavior.","directories":{"lib":"lib"},"dependencies":{"underscore":"~1.5.2"},"devDependencies":{"gulp":"~3.4.0","open":"~0.0.4","bower":"~1.2.8","express":"~3.4.7","tiny-lr":"0.0.5","expect.js":"~0.2.0","gulp-util":"~2.2.12","gulp-plato":"~0.1.0","gulp-header":"~1.0.2","gulp-rename":"~0.2.1","gulp-rimraf":"0.0.8","gulp-uglify":"~0.1.0","gulp-imports":"~0.0.1","gulp-beautify":"~1.0.3","gulp-hint-not":"~0.0.3"},"bundleDependencies":["underscore"]},"0.3.6":{"name":"machina","version":"0.3.6","keywords":["state machine","finite state machine","fsm","async","workflow","state","machina","machina-js","machina.js","machinajs"],"author":{"url":"http://freshbrewedcode.com/jimcowart","name":"Jim Cowart"},"_id":"machina@0.3.6","maintainers":[{"name":"ifandelse","email":"jim@ifandelse.com"}],"contributors":[{"url":"http://freshbrewedcode.com/jimcowart","name":"Jim Cowart","email":"jim@ifandelse.com"},{"url":"http://code.dougneiner.com","name":"Doug Neiner","email":"doug@dougneiner.com"},{"url":"https://github.com/fwg","name":"Friedemann Altrock","email":"frodenius@gmail.com"},{"url":"https://github.com/mtrimpe","name":"Michiel Trimpe","email":"michiel@trimpe.nl"},{"url":"https://github.com/bmavity","name":"Brian Mavity"}],"homepage":"http://machina-js.org/","bugs":{"url":"http://github.com/ifandelse/machina.js/issues","email":"jim@ifandelse.com"},"dist":{"shasum":"fd575f74f44a5aa9c27e44d954b776db346bdbbf","tarball":"https://registry.npmjs.org/machina/-/machina-0.3.6.tgz","integrity":"sha512-U/PRmJacKtL6rVM77K6spbDHmfn2J1jdAhIov+d21erWxbsWxavxE5AM0Qt3UDKHGqA5wqPsUFk7sFUFDkV6gw==","signatures":[{"sig":"MEQCIHnSvIvxU7U3AGs/oGmbnkA1qLIF0oTv78/Nyz81npi2AiA9msC5sJeAb/nQOc2gXdELiNr1e7Ud+gmJr2cx8f3mLQ==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}]},"main":"lib/machina.js","_from":".","engines":{"node":">=0.4.0"},"scripts":{"test":"mocha ./spec/*.js","build":"gulp","start":"gulp server"},"_npmUser":{"name":"ifandelse","email":"jim@ifandelse.com"},"licenses":[{"url":"http://opensource.org/licenses/MIT","type":"MIT"},{"url":"http://opensource.org/licenses/GPL-2.0","type":"GPL"}],"repository":{"url":"git://github.com/ifandelse/machina.js.git","type":"git"},"_npmVersion":"1.3.13","description":"A library for creating powerful and flexible finite state machines.  Loosely inspired by Erlang/OTP's gen_fsm behavior.","directories":{"lib":"lib"},"dependencies":{"underscore":"~1.5.2"},"devDependencies":{"gulp":"~3.4.0","open":"~0.0.4","bower":"~1.2.8","express":"~3.4.7","tiny-lr":"0.0.5","expect.js":"~0.2.0","gulp-util":"~2.2.12","gulp-plato":"~0.1.0","gulp-header":"~1.0.2","gulp-rename":"~0.2.1","gulp-rimraf":"0.0.8","gulp-uglify":"~0.1.0","gulp-imports":"~0.0.1","gulp-beautify":"~1.0.3","gulp-hint-not":"~0.0.3"},"bundleDependencies":["underscore"]},"0.3.7":{"name":"machina","version":"0.3.7","keywords":["state machine","finite state machine","fsm","async","workflow","state","machina","machina-js","machina.js","machinajs"],"author":{"url":"http://freshbrewedcode.com/jimcowart","name":"Jim Cowart"},"_id":"machina@0.3.7","maintainers":[{"name":"ifandelse","email":"jim@ifandelse.com"}],"contributors":[{"url":"http://freshbrewedcode.com/jimcowart","name":"Jim Cowart","email":"jim@ifandelse.com"},{"url":"http://code.dougneiner.com","name":"Doug Neiner","email":"doug@dougneiner.com"},{"url":"https://github.com/fwg","name":"Friedemann Altrock","email":"frodenius@gmail.com"},{"url":"https://github.com/mtrimpe","name":"Michiel Trimpe","email":"michiel@trimpe.nl"},{"url":"https://github.com/bmavity","name":"Brian Mavity"},{"url":"http://github.com/arobson","name":"Alex Robson","email":"arobson@gmail.com"},{"url":"http://github.com/dominicbarnes","name":"Dominic Barnes","email":"dominic@dbarnes.info"}],"homepage":"http://machina-js.org/","bugs":{"url":"http://github.com/ifandelse/machina.js/issues","email":"jim@ifandelse.com"},"dist":{"shasum":"21675ce199390753253694c1e423de321d807849","tarball":"https://registry.npmjs.org/machina/-/machina-0.3.7.tgz","integrity":"sha512-HrjNarC2IFZDHckfhdvn95K51ikg89q5TXSkw6dNoYb/wdItcGrdxOLHJ4VxQz6fRU2oHIMPEmrPhGFubzYoOg==","signatures":[{"sig":"MEUCIQD8s48c47UY/1HpUN2D10m8nTh1KfjygoGI/sV93M5AbAIgQmNvrfgtUQhVnr4XORlXZ6kU3ET+/97z9Bdlp4c9HDQ=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}]},"main":"lib/machina.js","_from":".","_shasum":"21675ce199390753253694c1e423de321d807849","engines":{"node":">=0.4.0"},"scripts":{"test":"mocha ./spec/*.js","build":"gulp","start":"gulp server"},"_npmUser":{"name":"ifandelse","email":"jim@ifandelse.com"},"licenses":[{"url":"http://opensource.org/licenses/MIT","type":"MIT"},{"url":"http://opensource.org/licenses/GPL-2.0","type":"GPL"}],"repository":{"url":"git://github.com/ifandelse/machina.js.git","type":"git"},"_npmVersion":"1.4.9","description":"A library for creating powerful and flexible finite state machines.  Loosely inspired by Erlang/OTP's gen_fsm behavior.","directories":{"lib":"lib"},"dependencies":{"lodash":"~2.4.1"},"devDependencies":{"gulp":"~3.4.0","open":"~0.0.4","bower":"~1.2.8","mocha":"^1.20.1","express":"~3.4.7","expect.js":"~0.2.0","gulp-util":"~2.2.12","gulp-plato":"~0.1.0","gulp-header":"~1.0.2","gulp-rename":"~0.2.1","gulp-uglify":"~0.1.0","gulp-imports":"~0.0.1","gulp-beautify":"~1.0.3","gulp-hint-not":"~0.0.3"}},"0.3.8":{"name":"machina","version":"0.3.8","keywords":["state machine","finite state machine","fsm","async","workflow","state","machina","machina-js","machina.js","machinajs"],"author":{"url":"http://freshbrewedcode.com/jimcowart","name":"Jim Cowart"},"_id":"machina@0.3.8","maintainers":[{"name":"ifandelse","email":"jim@ifandelse.com"}],"contributors":[{"url":"http://freshbrewedcode.com/jimcowart","name":"Jim Cowart","email":"jim@ifandelse.com"},{"url":"http://code.dougneiner.com","name":"Doug Neiner","email":"doug@dougneiner.com"},{"url":"https://github.com/fwg","name":"Friedemann Altrock","email":"frodenius@gmail.com"},{"url":"https://github.com/mtrimpe","name":"Michiel Trimpe","email":"michiel@trimpe.nl"},{"url":"https://github.com/bmavity","name":"Brian Mavity"},{"url":"http://github.com/arobson","name":"Alex Robson","email":"arobson@gmail.com"},{"url":"http://github.com/dominicbarnes","name":"Dominic Barnes","email":"dominic@dbarnes.info"}],"homepage":"http://machina-js.org/","bugs":{"url":"http://github.com/ifandelse/machina.js/issues","email":"jim@ifandelse.com"},"dist":{"shasum":"6c7a91b481f0ceeea288aa615a8c8dfdea240fd0","tarball":"https://registry.npmjs.org/machina/-/machina-0.3.8.tgz","integrity":"sha512-XKDMkekvYCfeFJxYMRk7mzSZeqMaZ9FxSeonphGTa15bLvZ8DCdQhzqgSbj/urO4zlJ/y3yyF5z13UUnYtyqtw==","signatures":[{"sig":"MEUCIAZbHn6mMSa/0CLjWGvEH4NhsxiSOt/W6ZwGf166y0mXAiEA9BjYu9NqEwyL1CLTdpd3Ogm2Nl68u5jzHFvy9iJ9a+0=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}]},"main":"lib/machina.js","_from":".","_shasum":"6c7a91b481f0ceeea288aa615a8c8dfdea240fd0","engines":{"node":">=0.4.0"},"scripts":{"test":"mocha ./spec/*.js","build":"gulp","start":"gulp server"},"_npmUser":{"name":"ifandelse","email":"jim@ifandelse.com"},"licenses":[{"url":"http://opensource.org/licenses/MIT","type":"MIT"},{"url":"http://opensource.org/licenses/GPL-2.0","type":"GPL"}],"repository":{"url":"git://github.com/ifandelse/machina.js.git","type":"git"},"_npmVersion":"1.4.9","description":"A library for creating powerful and flexible finite state machines.  Loosely inspired by Erlang/OTP's gen_fsm behavior.","directories":{"lib":"lib"},"dependencies":{"lodash":"~2.4.1"},"devDependencies":{"gulp":"~3.4.0","open":"~0.0.4","bower":"~1.2.8","mocha":"^1.20.1","express":"~3.4.7","expect.js":"~0.2.0","gulp-util":"~2.2.12","gulp-plato":"~0.1.0","gulp-header":"~1.0.2","gulp-rename":"~0.2.1","gulp-uglify":"~0.1.0","gulp-imports":"~0.0.1","gulp-beautify":"~1.0.3","gulp-hint-not":"~0.0.3"}},"0.4.0-1":{"name":"machina","version":"0.4.0-1","keywords":["state machine","finite state machine","fsm","async","workflow","state","machina","machina-js","machina.js","machinajs"],"author":{"url":"http://freshbrewedcode.com/jimcowart","name":"Jim Cowart"},"_id":"machina@0.4.0-1","maintainers":[{"name":"ifandelse","email":"jim@ifandelse.com"}],"contributors":[{"url":"http://freshbrewedcode.com/jimcowart","name":"Jim Cowart","email":"jim@ifandelse.com"},{"url":"http://code.dougneiner.com","name":"Doug Neiner","email":"doug@dougneiner.com"},{"url":"https://github.com/fwg","name":"Friedemann Altrock","email":"frodenius@gmail.com"},{"url":"https://github.com/mtrimpe","name":"Michiel Trimpe","email":"michiel@trimpe.nl"},{"url":"https://github.com/bmavity","name":"Brian Mavity"},{"url":"http://github.com/arobson","name":"Alex Robson","email":"arobson@gmail.com"},{"url":"http://github.com/dominicbarnes","name":"Dominic Barnes","email":"dominic@dbarnes.info"}],"homepage":"http://machina-js.org/","bugs":{"url":"http://github.com/ifandelse/machina.js/issues","email":"jim@ifandelse.com"},"dist":{"shasum":"62f0034eecf1426cc2d3c789f0073a3fb3b1827c","tarball":"https://registry.npmjs.org/machina/-/machina-0.4.0-1.tgz","integrity":"sha512-VQeRn4A6N7hkv2eNYT4qA//5zY8vPAkLnms9MZAPT6NcD5N1JDXtqFdWQlqYGEnoDVLW5knGYAt+fYPSaglPVA==","signatures":[{"sig":"MEQCIGpCZAhAlQ8nx95tVmdds8BZyVBeHqR5lQyRju2Sq1fWAiBbQrl5IB1nmTJYhSYTv/4t+1ChA2gSM7A93gvAPQxbKg==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}]},"main":"lib/machina.js","_from":".","_shasum":"62f0034eecf1426cc2d3c789f0073a3fb3b1827c","engines":{"node":">=0.4.0"},"scripts":{"test":"mocha ./spec/*.js","build":"gulp","start":"gulp server"},"_npmUser":{"name":"ifandelse","email":"jim@ifandelse.com"},"licenses":[{"url":"http://opensource.org/licenses/MIT","type":"MIT"},{"url":"http://opensource.org/licenses/GPL-2.0","type":"GPL"}],"repository":{"url":"git://github.com/ifandelse/machina.js.git","type":"git"},"_npmVersion":"1.4.9","description":"A library for creating powerful and flexible finite state machines.  Loosely inspired by Erlang/OTP's gen_fsm behavior.","directories":{"lib":"lib"},"dependencies":{"lodash":"~2.4.1"},"devDependencies":{"gulp":"~3.4.0","open":"~0.0.4","bower":"~1.2.8","mocha":"^1.20.1","express":"~3.4.7","expect.js":"~0.2.0","gulp-util":"~2.2.12","gulp-plato":"~0.1.0","gulp-header":"~1.0.2","gulp-rename":"~0.2.1","gulp-uglify":"~0.1.0","gulp-imports":"~0.0.1","gulp-beautify":"~1.0.3","gulp-hint-not":"~0.0.3"}},"0.4.0-2":{"name":"machina","version":"0.4.0-2","keywords":["state machine","finite state machine","fsm","async","workflow","state","machina","machina-js","machina.js","machinajs"],"author":{"url":"http://ifandelse.com","name":"Jim Cowart"},"_id":"machina@0.4.0-2","maintainers":[{"name":"ifandelse","email":"jim@ifandelse.com"}],"contributors":[{"url":"http://ifandelse.com","name":"Jim Cowart","email":"jim@ifandelse.com"},{"url":"http://code.dougneiner.com","name":"Doug Neiner","email":"doug@dougneiner.com"},{"url":"https://github.com/fwg","name":"Friedemann Altrock","email":"frodenius@gmail.com"},{"url":"https://github.com/mtrimpe","name":"Michiel Trimpe","email":"michiel@trimpe.nl"},{"url":"https://github.com/bmavity","name":"Brian Mavity"},{"url":"http://github.com/arobson","name":"Alex Robson","email":"arobson@gmail.com"},{"url":"http://github.com/dominicbarnes","name":"Dominic Barnes","email":"dominic@dbarnes.info"},{"url":"http://github.com/codelica","name":"James Pooton","email":"james@codelica.com"}],"homepage":"http://machina-js.org/","bugs":{"url":"http://github.com/ifandelse/machina.js/issues","email":"jim@ifandelse.com"},"dist":{"shasum":"a6028ceb895d40235b5fec8b2b6f7364983e2516","tarball":"https://registry.npmjs.org/machina/-/machina-0.4.0-2.tgz","integrity":"sha512-wy3GS4jPE5odP523mf1us7CupFZosoH9BVVZC2Fh+lfb9fKUiuO/oQBAdVyNodYi0tYiuDEVYVVmRGgPGi+puA==","signatures":[{"sig":"MEQCIG4K20dK5A70FgeGesMS7ZwrLl4XCW01q5Ksvjca0W03AiAGoLCHDP433CczF99gw/EIuW8PGnUNLhnzqV/T6rP+6w==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}]},"main":"lib/machina.js","_from":".","_shasum":"a6028ceb895d40235b5fec8b2b6f7364983e2516","engines":{"node":">=0.4.0"},"gitHead":"b83bdb966732b3e4b2bee404191d9fd11786d140","scripts":{"test":"mocha ./spec/*.js","build":"gulp","start":"gulp server"},"_npmUser":{"name":"ifandelse","email":"jim@ifandelse.com"},"licenses":[{"url":"http://opensource.org/licenses/MIT","type":"MIT"},{"url":"http://opensource.org/licenses/GPL-2.0","type":"GPL"}],"repository":{"url":"git://github.com/ifandelse/machina.js.git","type":"git"},"_npmVersion":"1.4.28","description":"A library for creating powerful and flexible finite state machines.  Loosely inspired by Erlang/OTP's gen_fsm behavior.","directories":{"lib":"lib"},"dependencies":{"lodash":"~2.4.1"},"devDependencies":{"gulp":"~3.4.0","open":"~0.0.4","bower":"~1.2.8","mocha":"^1.20.1","express":"~3.4.7","expect.js":"~0.2.0","gulp-util":"~2.2.12","gulp-plato":"~0.1.0","gulp-header":"~1.0.2","gulp-rename":"~0.2.1","gulp-uglify":"~0.1.0","gulp-imports":"~0.0.1","gulp-beautify":"~1.0.3","gulp-hint-not":"~0.0.3"}},"0.4.0":{"name":"machina","version":"0.4.0","keywords":["state machine","finite state machine","fsm","async","workflow","state","machina","machina-js","machina.js","machinajs"],"author":{"url":"http://ifandelse.com","name":"Jim Cowart"},"_id":"machina@0.4.0","maintainers":[{"name":"ifandelse","email":"jim@ifandelse.com"}],"contributors":[{"url":"http://ifandelse.com","name":"Jim Cowart","email":"jim@ifandelse.com"},{"url":"http://code.dougneiner.com","name":"Doug Neiner","email":"doug@dougneiner.com"},{"url":"https://github.com/fwg","name":"Friedemann Altrock","email":"frodenius@gmail.com"},{"url":"https://github.com/mtrimpe","name":"Michiel Trimpe","email":"michiel@trimpe.nl"},{"url":"https://github.com/bmavity","name":"Brian Mavity"},{"url":"http://github.com/arobson","name":"Alex Robson","email":"arobson@gmail.com"},{"url":"http://github.com/dominicbarnes","name":"Dominic Barnes","email":"dominic@dbarnes.info"},{"url":"http://github.com/codelica","name":"James Pooton","email":"james@codelica.com"}],"homepage":"http://machina-js.org/","bugs":{"url":"http://github.com/ifandelse/machina.js/issues","email":"jim@ifandelse.com"},"dist":{"shasum":"927574fb1014dac3ec12c6d8f18f5e607b987779","tarball":"https://registry.npmjs.org/machina/-/machina-0.4.0.tgz","integrity":"sha512-K5ApE5KqaDi6Ad89IO13SMtZDrJQcFORBl/Wu3Vj2AsIqACqyOCzdbB6Uxr0yv0mtAluwytSVtWC7ZXhi6AoLA==","signatures":[{"sig":"MEUCIQCB0Z9wX/LVssa179FUJKhbN2Eto3r7XlQ3McI65r6qvQIgQP29vs6kX3AZF19YIIN2/0jqtKUtZBHBi63nmykUhU8=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}]},"main":"lib/machina.js","_from":".","_shasum":"927574fb1014dac3ec12c6d8f18f5e607b987779","engines":{"node":">=0.4.0"},"gitHead":"f4924b7ad1c2e7d840f8e46f35a0e1071944d275","scripts":{"test":"mocha ./spec/*.js","build":"gulp","start":"gulp server"},"_npmUser":{"name":"ifandelse","email":"jim@ifandelse.com"},"licenses":[{"url":"http://opensource.org/licenses/MIT","type":"MIT"},{"url":"http://opensource.org/licenses/GPL-2.0","type":"GPL"}],"repository":{"url":"git://github.com/ifandelse/machina.js.git","type":"git"},"_npmVersion":"1.4.28","description":"A library for creating powerful and flexible finite state machines.  Loosely inspired by Erlang/OTP's gen_fsm behavior.","directories":{"lib":"lib"},"dependencies":{"lodash":"~2.4.1"},"devDependencies":{"gulp":"~3.4.0","open":"~0.0.4","bower":"~1.2.8","mocha":"^1.20.1","express":"~3.4.7","expect.js":"~0.2.0","gulp-util":"~2.2.12","gulp-plato":"~0.1.0","gulp-header":"~1.0.2","gulp-rename":"~0.2.1","gulp-uglify":"~0.1.0","gulp-imports":"~0.0.1","gulp-beautify":"~1.0.3","gulp-hint-not":"~0.0.3"}},"0.4.1":{"name":"machina","version":"0.4.1","keywords":["state machine","finite state machine","fsm","async","workflow","state","machina","machina-js","machina.js","machinajs"],"author":{"url":"http://ifandelse.com","name":"Jim Cowart"},"_id":"machina@0.4.1","maintainers":[{"name":"ifandelse","email":"jim@ifandelse.com"}],"contributors":[{"url":"http://ifandelse.com","name":"Jim Cowart","email":"jim@ifandelse.com"},{"url":"http://code.dougneiner.com","name":"Doug Neiner","email":"doug@dougneiner.com"},{"url":"https://github.com/fwg","name":"Friedemann Altrock","email":"frodenius@gmail.com"},{"url":"https://github.com/mtrimpe","name":"Michiel Trimpe","email":"michiel@trimpe.nl"},{"url":"https://github.com/bmavity","name":"Brian Mavity"},{"url":"http://github.com/arobson","name":"Alex Robson","email":"arobson@gmail.com"},{"url":"http://github.com/dominicbarnes","name":"Dominic Barnes","email":"dominic@dbarnes.info"},{"url":"http://github.com/codelica","name":"James Pooton","email":"james@codelica.com"},{"url":"http://tim.theenchanter.com/","name":"Tim Harper","email":"timcharper@gmail.com"}],"homepage":"http://machina-js.org/","bugs":{"url":"http://github.com/ifandelse/machina.js/issues","email":"jim@ifandelse.com"},"dist":{"shasum":"ee27f115957db01e83bd698b1cb4c422b750e0f3","tarball":"https://registry.npmjs.org/machina/-/machina-0.4.1.tgz","integrity":"sha512-tqaUUbBl9NcAguOmdwYTGAb3T0qRngWNzPNL7LOSrnsDnmm34cxWnrDRm/L7X89JcmHkqmiNzZbZrODMB8diAQ==","signatures":[{"sig":"MEYCIQDoZIH9+hpdFs4NFIIfFuHtlokhJr8NC8oagpd3GcPVmgIhALxxCXZrv0UVtdU0qMg4ihhIEKgU6/FVscNO+RVOeg4R","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}]},"main":"lib/machina.js","_from":".","_shasum":"ee27f115957db01e83bd698b1cb4c422b750e0f3","engines":{"node":">=0.4.0"},"gitHead":"2b8e58dc79c935a811bf1cbe559bf42447ede7f6","scripts":{"test":"mocha ./spec/*.js","build":"gulp","start":"gulp server"},"_npmUser":{"name":"ifandelse","email":"jim@ifandelse.com"},"licenses":[{"url":"http://opensource.org/licenses/MIT","type":"MIT"},{"url":"http://opensource.org/licenses/GPL-2.0","type":"GPL"}],"repository":{"url":"git://github.com/ifandelse/machina.js.git","type":"git"},"_npmVersion":"1.4.28","description":"A library for creating powerful and flexible finite state machines.  Loosely inspired by Erlang/OTP's gen_fsm behavior.","directories":{"lib":"lib"},"dependencies":{"lodash":"~2.4.1"},"devDependencies":{"gulp":"~3.4.0","open":"~0.0.4","bower":"~1.2.8","mocha":"^1.20.1","express":"~3.4.7","expect.js":"~0.2.0","gulp-util":"~2.2.12","gulp-plato":"~0.1.0","gulp-header":"~1.0.2","gulp-rename":"~0.2.1","gulp-uglify":"~0.1.0","gulp-imports":"~0.0.1","gulp-beautify":"~1.0.3","gulp-hint-not":"~0.0.3"}},"0.4.2":{"name":"machina","version":"0.4.2","keywords":["state machine","finite state machine","fsm","async","workflow","state","machina","machina-js","machina.js","machinajs"],"author":{"url":"http://ifandelse.com","name":"Jim Cowart"},"_id":"machina@0.4.2","maintainers":[{"name":"ifandelse","email":"jim@ifandelse.com"}],"contributors":[{"url":"http://ifandelse.com","name":"Jim Cowart","email":"jim@ifandelse.com"},{"url":"http://code.dougneiner.com","name":"Doug Neiner","email":"doug@dougneiner.com"},{"url":"https://github.com/fwg","name":"Friedemann Altrock","email":"frodenius@gmail.com"},{"url":"https://github.com/mtrimpe","name":"Michiel Trimpe","email":"michiel@trimpe.nl"},{"url":"https://github.com/bmavity","name":"Brian Mavity"},{"url":"http://github.com/arobson","name":"Alex Robson","email":"arobson@gmail.com"},{"url":"http://github.com/dominicbarnes","name":"Dominic Barnes","email":"dominic@dbarnes.info"},{"url":"http://github.com/codelica","name":"James Pooton","email":"james@codelica.com"},{"url":"http://tim.theenchanter.com/","name":"Tim Harper","email":"timcharper@gmail.com"}],"homepage":"http://machina-js.org/","bugs":{"url":"http://github.com/ifandelse/machina.js/issues","email":"jim@ifandelse.com"},"dist":{"shasum":"1c2e78ff31236e873e66476fd014f43c990c910c","tarball":"https://registry.npmjs.org/machina/-/machina-0.4.2.tgz","integrity":"sha512-VSdbeYgrvfLfFLHChCH7PZrvONmqEu3v9UzjH4pIo0kjqeFhYiMWxVFCGEJYAOIQuPBBMZJz/H9DkqwD7qqsyw==","signatures":[{"sig":"MEUCIQCAh92ZEXbs4jVjxvHWkzvA5UZPf+mf5rm3Kml8Dl8n/gIgT/lu6QEBZYpBKM02EbFA7QbaTiTYMcOR8UIjfrSywec=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}]},"main":"lib/machina.js","_from":".","_shasum":"1c2e78ff31236e873e66476fd014f43c990c910c","engines":{"node":">=0.4.0"},"gitHead":"3d09b1bfe21b7a4bc2bb4bee7a697d7d09622454","scripts":{"test":"mocha ./spec/*.js","build":"gulp","start":"gulp server"},"_npmUser":{"name":"ifandelse","email":"jim@ifandelse.com"},"licenses":[{"url":"http://opensource.org/licenses/MIT","type":"MIT"},{"url":"http://opensource.org/licenses/GPL-2.0","type":"GPL"}],"repository":{"url":"git://github.com/ifandelse/machina.js.git","type":"git"},"_npmVersion":"1.4.28","description":"A library for creating powerful and flexible finite state machines.  Loosely inspired by Erlang/OTP's gen_fsm behavior.","directories":{"lib":"lib"},"dependencies":{"lodash":"~2.4.1"},"devDependencies":{"gulp":"~3.4.0","open":"~0.0.4","bower":"~1.2.8","mocha":"^1.20.1","express":"~3.4.7","expect.js":"~0.2.0","gulp-util":"~2.2.12","gulp-plato":"~0.1.0","gulp-header":"~1.0.2","gulp-rename":"~0.2.1","gulp-uglify":"~0.1.0","gulp-imports":"~0.0.1","gulp-beautify":"~1.0.3","gulp-hint-not":"~0.0.3"}},"0.4.3":{"name":"machina","version":"0.4.3","keywords":["state machine","finite state machine","fsm","async","workflow","state","machina","machina-js","machina.js","machinajs"],"author":{"url":"http://ifandelse.com","name":"Jim Cowart"},"_id":"machina@0.4.3","maintainers":[{"name":"ifandelse","email":"jim@ifandelse.com"}],"contributors":[{"url":"http://ifandelse.com","name":"Jim Cowart","email":"jim@ifandelse.com"},{"url":"http://code.dougneiner.com","name":"Doug Neiner","email":"doug@dougneiner.com"},{"url":"https://github.com/fwg","name":"Friedemann Altrock","email":"frodenius@gmail.com"},{"url":"https://github.com/mtrimpe","name":"Michiel Trimpe","email":"michiel@trimpe.nl"},{"url":"https://github.com/bmavity","name":"Brian Mavity"},{"url":"http://github.com/arobson","name":"Alex Robson","email":"arobson@gmail.com"},{"url":"http://github.com/dominicbarnes","name":"Dominic Barnes","email":"dominic@dbarnes.info"},{"url":"http://github.com/codelica","name":"James Pooton","email":"james@codelica.com"},{"url":"http://tim.theenchanter.com/","name":"Tim Harper","email":"timcharper@gmail.com"}],"homepage":"http://machina-js.org/","bugs":{"url":"http://github.com/ifandelse/machina.js/issues","email":"jim@ifandelse.com"},"dist":{"shasum":"e5a98cf3e8b0d815c6513176467e251709599e75","tarball":"https://registry.npmjs.org/machina/-/machina-0.4.3.tgz","integrity":"sha512-6qZVHfMK9q9hqMpsiW82ItWmX7UtsQ3PKQA5eff7tRW/wJ60RQuLSNkmxdJI2ClDIv8B47YTBDpwS7zMO5ZY0g==","signatures":[{"sig":"MEQCIHcHkfzXSQb9zA0fzrT51ft25kA/m2myPGoti1jEKLtjAiBsY+kJGnD6moWI79oi1yg7KL0vPQyQuXV27wlOdzq/YA==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}]},"main":"lib/machina.js","_from":".","_shasum":"e5a98cf3e8b0d815c6513176467e251709599e75","engines":{"node":">=0.4.0"},"gitHead":"42bfdcd79c86234612d7016e79949ef0a4d09cc1","scripts":{"test":"mocha ./spec/*.js","build":"gulp","start":"gulp server"},"_npmUser":{"name":"ifandelse","email":"jim@ifandelse.com"},"licenses":[{"url":"http://opensource.org/licenses/MIT","type":"MIT"},{"url":"http://opensource.org/licenses/GPL-2.0","type":"GPL"}],"repository":{"url":"git://github.com/ifandelse/machina.js.git","type":"git"},"_npmVersion":"1.4.28","description":"A library for creating powerful and flexible finite state machines.  Loosely inspired by Erlang/OTP's gen_fsm behavior.","directories":{"lib":"lib"},"dependencies":{"lodash":"~2.4.1"},"devDependencies":{"gulp":"~3.4.0","open":"~0.0.4","bower":"~1.2.8","mocha":"^1.20.1","express":"~3.4.7","expect.js":"~0.2.0","gulp-util":"~2.2.12","gulp-plato":"~0.1.0","gulp-header":"~1.0.2","gulp-rename":"~0.2.1","gulp-uglify":"~0.1.0","gulp-imports":"~0.0.1","gulp-beautify":"~1.0.3","gulp-hint-not":"~0.0.3"}},"1.0.0-1":{"name":"machina","version":"1.0.0-1","keywords":["state machine","finite state machine","fsm","async","workflow","state","machina","machina-js","machina.js","machinajs","hierarchical","state chart","state charts"],"author":{"url":"http://ifandelse.com","name":"Jim Cowart"},"_id":"machina@1.0.0-1","maintainers":[{"name":"ifandelse","email":"jim@ifandelse.com"}],"contributors":[{"url":"http://ifandelse.com","name":"Jim Cowart","email":"jim@ifandelse.com"},{"url":"http://code.dougneiner.com","name":"Doug Neiner","email":"doug@dougneiner.com"},{"url":"https://github.com/fwg","name":"Friedemann Altrock","email":"frodenius@gmail.com"},{"url":"https://github.com/mtrimpe","name":"Michiel Trimpe","email":"michiel@trimpe.nl"},{"url":"https://github.com/bmavity","name":"Brian Mavity"},{"url":"http://github.com/arobson","name":"Alex Robson","email":"arobson@gmail.com"},{"url":"http://github.com/dominicbarnes","name":"Dominic Barnes","email":"dominic@dbarnes.info"},{"url":"http://tim.theenchanter.com/","name":"Tim Harper","email":"timcharper@gmail.com"},{"url":"http://github.com/codelica","name":"James Pooton","email":"james@codelica.com"},{"url":"https://github.com/bradfol","name":"Brad Fol"}],"homepage":"http://machina-js.org/","bugs":{"url":"http://github.com/ifandelse/machina.js/issues","email":"jim@ifandelse.com"},"dist":{"shasum":"5bc5734144b897d9ba032d1a7e328d74748f02f1","tarball":"https://registry.npmjs.org/machina/-/machina-1.0.0-1.tgz","integrity":"sha512-ZtKdGPzaYZ03jehpXGy3Og5OUK5GGjVxhkRbPE2RSvjUXkzQLpKjvEDCurNpfnpMMj4ZH0G6U3siK5MQqqpmag==","signatures":[{"sig":"MEUCIQCqvSgPVMicRYileHt0dn9KOYAh6DpmiPt38G59lq5a/wIgVbg2suBXbVlIC6W3201xS+kjPr+eM6zwGUNZjSoSU1M=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}]},"main":"lib/machina.js","_from":".","_shasum":"5bc5734144b897d9ba032d1a7e328d74748f02f1","engines":{"node":">=0.4.0"},"gitHead":"d3d36a981909042e1aa015960dcbfaffff211d80","scripts":{"test":"./node_modules/mocha/bin/mocha -r spec/helpers/node-setup.js spec","build":"gulp","start":"gulp server","coverage":"./node_modules/istanbul/lib/cli.js cover ./node_modules/mocha/bin/_mocha -x 'spec/**/*'  -- -r spec/helpers/node-setup.js spec spec/*.spec.js","show-coverage":"open ./coverage/lcov-report/index.html"},"_npmUser":{"name":"ifandelse","email":"jim@ifandelse.com"},"licenses":[{"url":"http://opensource.org/licenses/MIT","type":"MIT"},{"url":"http://opensource.org/licenses/GPL-2.0","type":"GPL"}],"repository":{"url":"git://github.com/ifandelse/machina.js.git","type":"git"},"_npmVersion":"2.3.0","description":"A library for creating powerful and flexible finite state machines. Loosely inspired by Erlang/OTP's gen_fsm behavior.","directories":{"lib":"lib"},"_nodeVersion":"0.10.36","dependencies":{"lodash":"~2.4.1"},"devDependencies":{"gulp":"~3.8.10","open":"~0.0.4","bower":"~1.2.8","mocha":"^2.0.1","sinon":"1.11.1","should":"^4.0.4","express":"~3.4.7","istanbul":"^0.3.2","gulp-util":"~2.2.12","gulp-plato":"~0.1.0","gulp-header":"~1.0.2","gulp-rename":"~0.2.1","gulp-uglify":"~0.1.0","gulp-imports":"~0.0.1","gulp-beautify":"~1.0.3","gulp-hint-not":"~0.0.3","gulp-spawn-mocha":"^0.5.1"}},"1.0.0-2":{"name":"machina","version":"1.0.0-2","keywords":["state machine","finite state machine","fsm","async","workflow","state","machina","machina-js","machina.js","machinajs","hierarchical","state chart","state charts"],"author":{"url":"http://ifandelse.com","name":"Jim Cowart"},"_id":"machina@1.0.0-2","maintainers":[{"name":"ifandelse","email":"jim@ifandelse.com"}],"contributors":[{"url":"http://ifandelse.com","name":"Jim Cowart","email":"jim@ifandelse.com"},{"url":"http://code.dougneiner.com","name":"Doug Neiner","email":"doug@dougneiner.com"},{"url":"https://github.com/fwg","name":"Friedemann Altrock","email":"frodenius@gmail.com"},{"url":"https://github.com/mtrimpe","name":"Michiel Trimpe","email":"michiel@trimpe.nl"},{"url":"https://github.com/bmavity","name":"Brian Mavity"},{"url":"http://github.com/arobson","name":"Alex Robson","email":"arobson@gmail.com"},{"url":"http://github.com/dominicbarnes","name":"Dominic Barnes","email":"dominic@dbarnes.info"},{"url":"http://tim.theenchanter.com/","name":"Tim Harper","email":"timcharper@gmail.com"},{"url":"http://github.com/codelica","name":"James Pooton","email":"james@codelica.com"},{"url":"https://github.com/bradfol","name":"Brad Fol"}],"homepage":"http://machina-js.org/","bugs":{"url":"http://github.com/ifandelse/machina.js/issues","email":"jim@ifandelse.com"},"dist":{"shasum":"9b9ecc386fb8dfe390b140e8112105820dae2c0c","tarball":"https://registry.npmjs.org/machina/-/machina-1.0.0-2.tgz","integrity":"sha512-FfNIil3f1+u4ae/dLbzYUdWl2i3QtgirjQ1Ygw2HWD+BCzopPvYTyCQ89h83QVm0xou2YCP6lGdhAOlZT7ctvA==","signatures":[{"sig":"MEQCIATTFDardC4mG9rGS+cVPU5KHk9Qoqt5iyztwTZ3/EDsAiB4z8fb2A7Kvr/Ie1psRwbGhK5KBcFflgUh+J/PQEiYmg==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}]},"main":"lib/machina.js","_from":".","_shasum":"9b9ecc386fb8dfe390b140e8112105820dae2c0c","engines":{"node":">=0.4.0"},"gitHead":"a6916dfea8dee6ad36f7156400ad294ccf7dc60d","scripts":{"test":"./node_modules/mocha/bin/mocha -r spec/helpers/node-setup.js spec","build":"gulp","start":"gulp server","coverage":"./node_modules/istanbul/lib/cli.js cover ./node_modules/mocha/bin/_mocha -x 'spec/**/*'  -- -r spec/helpers/node-setup.js spec spec/*.spec.js","show-coverage":"open ./coverage/lcov-report/index.html"},"_npmUser":{"name":"ifandelse","email":"jim@ifandelse.com"},"licenses":[{"url":"http://opensource.org/licenses/MIT","type":"MIT"},{"url":"http://opensource.org/licenses/GPL-2.0","type":"GPL"}],"repository":{"url":"git://github.com/ifandelse/machina.js.git","type":"git"},"_npmVersion":"2.3.0","description":"A library for creating powerful and flexible finite state machines. Loosely inspired by Erlang/OTP's gen_fsm behavior.","directories":{"lib":"lib"},"_nodeVersion":"0.10.36","dependencies":{"lodash":"~3.3.1"},"devDependencies":{"gulp":"~3.8.10","open":"~0.0.4","bower":"~1.2.8","mocha":"^2.0.1","sinon":"1.11.1","should":"^4.0.4","express":"~3.4.7","istanbul":"^0.3.2","gulp-util":"~2.2.12","gulp-plato":"~0.1.0","gulp-header":"~1.0.2","gulp-rename":"~0.2.1","gulp-uglify":"~0.1.0","gulp-imports":"~0.0.1","gulp-beautify":"~1.0.3","gulp-hint-not":"~0.0.3","gulp-spawn-mocha":"^0.5.1"}},"1.0.0":{"name":"machina","version":"1.0.0","keywords":["state machine","finite state machine","fsm","async","workflow","state","machina","machina-js","machina.js","machinajs","hierarchical","state chart","state charts"],"author":{"url":"http://ifandelse.com","name":"Jim Cowart"},"_id":"machina@1.0.0","maintainers":[{"name":"ifandelse","email":"jim@ifandelse.com"}],"contributors":[{"url":"http://ifandelse.com","name":"Jim Cowart","email":"jim@ifandelse.com"},{"url":"http://code.dougneiner.com","name":"Doug Neiner","email":"doug@dougneiner.com"},{"url":"https://github.com/fwg","name":"Friedemann Altrock","email":"frodenius@gmail.com"},{"url":"https://github.com/mtrimpe","name":"Michiel Trimpe","email":"michiel@trimpe.nl"},{"url":"https://github.com/bmavity","name":"Brian Mavity"},{"url":"http://github.com/arobson","name":"Alex Robson","email":"arobson@gmail.com"},{"url":"http://github.com/dominicbarnes","name":"Dominic Barnes","email":"dominic@dbarnes.info"},{"url":"http://tim.theenchanter.com/","name":"Tim Harper","email":"timcharper@gmail.com"},{"url":"http://github.com/codelica","name":"James Pooton","email":"james@codelica.com"},{"url":"https://github.com/bradfol","name":"Brad Fol"}],"homepage":"http://machina-js.org/","bugs":{"url":"http://github.com/ifandelse/machina.js/issues","email":"jim@ifandelse.com"},"dist":{"shasum":"976acf1a58f4f140c61e0617b1da6fff4a5edb43","tarball":"https://registry.npmjs.org/machina/-/machina-1.0.0.tgz","integrity":"sha512-Q0jDr9XP8WdWnACtnm13UQMvLVjTuTefNggAz7HgFpuxM12Aei0+iREg67jKh/G5Q41rx/d7m3kLnuVNMBExeQ==","signatures":[{"sig":"MEUCIQCIjp0daGY/AnJWIzM6wNDObeVvxzkWJtuYiTXh2ciBHAIgTmDse8+5xsW4zIs/GLWpXRdb/FHsXi+kxnWKQvvBZoA=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}]},"main":"lib/machina.js","_from":".","_shasum":"976acf1a58f4f140c61e0617b1da6fff4a5edb43","engines":{"node":">=0.4.0"},"gitHead":"46dcdf362f1b8deb6e76c325d1bf097aa6fb8820","scripts":{"test":"./node_modules/mocha/bin/mocha -r spec/helpers/node-setup.js spec","build":"gulp","start":"gulp server","coverage":"./node_modules/istanbul/lib/cli.js cover ./node_modules/mocha/bin/_mocha -x 'spec/**/*'  -- -r spec/helpers/node-setup.js spec spec/*.spec.js","show-coverage":"open ./coverage/lcov-report/index.html"},"_npmUser":{"name":"ifandelse","email":"jim@ifandelse.com"},"licenses":[{"url":"http://opensource.org/licenses/MIT","type":"MIT"},{"url":"http://opensource.org/licenses/GPL-2.0","type":"GPL"}],"repository":{"url":"git://github.com/ifandelse/machina.js.git","type":"git"},"_npmVersion":"2.3.0","description":"A library for creating powerful and flexible finite state machines. Loosely inspired by Erlang/OTP's gen_fsm behavior.","directories":{"lib":"lib"},"_nodeVersion":"0.10.36","dependencies":{"lodash":"3.x"},"publishConfig":{"registry":"https://registry.npmjs.org"},"devDependencies":{"gulp":"~3.8.10","open":"~0.0.4","bower":"~1.2.8","mocha":"^2.0.1","sinon":"1.11.1","should":"^4.0.4","express":"~3.4.7","istanbul":"^0.3.2","gulp-util":"~2.2.12","gulp-plato":"~0.1.0","gulp-header":"~1.0.2","gulp-rename":"~0.2.1","gulp-uglify":"~0.1.0","gulp-imports":"~0.0.1","gulp-beautify":"~1.0.3","gulp-hint-not":"~0.0.3","gulp-spawn-mocha":"^0.5.1"}},"1.0.1":{"name":"machina","version":"1.0.1","keywords":["state machine","finite state machine","fsm","async","workflow","state","machina","machina-js","machina.js","machinajs","hierarchical","state chart","state charts"],"author":{"url":"http://ifandelse.com","name":"Jim Cowart"},"_id":"machina@1.0.1","maintainers":[{"name":"ifandelse","email":"jim@ifandelse.com"}],"contributors":[{"url":"http://ifandelse.com","name":"Jim Cowart","email":"jim@ifandelse.com"},{"url":"http://code.dougneiner.com","name":"Doug Neiner","email":"doug@dougneiner.com"},{"url":"https://github.com/fwg","name":"Friedemann Altrock","email":"frodenius@gmail.com"},{"url":"https://github.com/mtrimpe","name":"Michiel Trimpe","email":"michiel@trimpe.nl"},{"url":"https://github.com/bmavity","name":"Brian Mavity"},{"url":"http://github.com/arobson","name":"Alex Robson","email":"arobson@gmail.com"},{"url":"http://github.com/dominicbarnes","name":"Dominic Barnes","email":"dominic@dbarnes.info"},{"url":"http://tim.theenchanter.com/","name":"Tim Harper","email":"timcharper@gmail.com"},{"url":"http://github.com/codelica","name":"James Pooton","email":"james@codelica.com"},{"url":"https://github.com/bradfol","name":"Brad Fol"}],"homepage":"http://machina-js.org/","bugs":{"url":"http://github.com/ifandelse/machina.js/issues","email":"jim@ifandelse.com"},"dist":{"shasum":"d8cc10745dead8afb949d32c7e4f9ef1f6321aba","tarball":"https://registry.npmjs.org/machina/-/machina-1.0.1.tgz","integrity":"sha512-zqar7nMD2GPBvWq0al0sgYWM4lYu1PnxBWakAn+h0/TYe0ccXpDtFU5xzqTIVhB+V3ODZcCp6DGTVNaITKVW7w==","signatures":[{"sig":"MEUCIHJhxKy2RJuaazxlynE+RLKx54Hv5QJGEqux/XjfyNUUAiEA6l+Y0PWsDFSNtlWIauK9SzUlmKiCFTXkMUYuzFGHd/I=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}]},"main":"lib/machina.js","_from":".","files":["LICENSE","lib"],"_shasum":"d8cc10745dead8afb949d32c7e4f9ef1f6321aba","engines":{"node":">=0.4.0"},"gitHead":"813b3af858e70900a50551f38b4bc50c5e7586e5","scripts":{"test":"./node_modules/mocha/bin/mocha -r spec/helpers/node-setup.js spec","build":"gulp","start":"gulp server","coverage":"./node_modules/istanbul/lib/cli.js cover ./node_modules/mocha/bin/_mocha -x 'spec/**/*'  -- -r spec/helpers/node-setup.js spec spec/*.spec.js","show-coverage":"open ./coverage/lcov-report/index.html"},"_npmUser":{"name":"ifandelse","email":"jim@ifandelse.com"},"licenses":[{"url":"http://opensource.org/licenses/MIT","type":"MIT"},{"url":"http://opensource.org/licenses/GPL-2.0","type":"GPL"}],"repository":{"url":"git://github.com/ifandelse/machina.js.git","type":"git"},"_npmVersion":"2.7.5","description":"A library for creating powerful and flexible finite state machines. Loosely inspired by Erlang/OTP's gen_fsm behavior.","directories":{"lib":"lib"},"_nodeVersion":"0.10.36","dependencies":{"lodash":"3.x"},"publishConfig":{"registry":"https://registry.npmjs.org"},"devDependencies":{"gulp":"~3.8.11","open":"~0.0.4","bower":"1.x","mocha":"^2.2.5","sinon":"1.14.1","should":"^6.0.3","express":"~3.4.7","istanbul":"^0.3.14","gulp-jscs":"^1.6.0","gulp-util":"~3.0.4","gulp-plato":"~1.0.2","gulp-header":"~1.2.2","gulp-jshint":"^1.11.0","gulp-rename":"~1.2.2","gulp-uglify":"~1.2.0","gulp-changed":"^1.2.1","gulp-imports":"~0.0.1","gulp-beautify":"~1.1.2","gulp-hint-not":"~0.0.3","jshint-stylish":"^2.0.0","gulp-spawn-mocha":"^2.0.1"}},"1.1.0":{"name":"machina","version":"1.1.0","keywords":["state machine","finite state machine","fsm","async","workflow","state","machina","machina-js","machina.js","machinajs","hierarchical","state chart","state charts"],"author":{"url":"http://ifandelse.com","name":"Jim Cowart"},"_id":"machina@1.1.0","maintainers":[{"name":"ifandelse","email":"jim@ifandelse.com"}],"contributors":[{"url":"http://ifandelse.com","name":"Jim Cowart","email":"jim@ifandelse.com"},{"url":"http://code.dougneiner.com","name":"Doug Neiner","email":"doug@dougneiner.com"},{"url":"https://github.com/fwg","name":"Friedemann Altrock","email":"frodenius@gmail.com"},{"url":"https://github.com/mtrimpe","name":"Michiel Trimpe","email":"michiel@trimpe.nl"},{"url":"https://github.com/bmavity","name":"Brian Mavity"},{"url":"http://github.com/arobson","name":"Alex Robson","email":"arobson@gmail.com"},{"url":"http://github.com/dominicbarnes","name":"Dominic Barnes","email":"dominic@dbarnes.info"},{"url":"http://tim.theenchanter.com/","name":"Tim Harper","email":"timcharper@gmail.com"},{"url":"http://github.com/codelica","name":"James Pooton","email":"james@codelica.com"},{"url":"https://github.com/bradfol","name":"Brad Fol"}],"homepage":"http://machina-js.org/","bugs":{"url":"http://github.com/ifandelse/machina.js/issues","email":"jim@ifandelse.com"},"dist":{"shasum":"4d9199741f314b93320dbef4f623eee435735aee","tarball":"https://registry.npmjs.org/machina/-/machina-1.1.0.tgz","integrity":"sha512-jyyQsE6Nl0CXwk/GCduQ++/R+bMu818N/D912A8cVihfpfOffforomrMl/nLZlUh86nFZxUmKbCC/NdzAQA2Ng==","signatures":[{"sig":"MEYCIQCHSdQNjP7EQpnZ/yzPMwtGa6hCCkIkN3/3nKT838MpTwIhAIPZf94Sr1669sPcllVP9s9h32DPkCt3IHVP/sI7egrI","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}]},"main":"lib/machina.js","_from":".","files":["LICENSE","lib"],"_shasum":"4d9199741f314b93320dbef4f623eee435735aee","engines":{"node":">=0.4.0"},"gitHead":"a2e46c291a9b46e3c0f962db6d532b1f0f7917f0","scripts":{"test":"./node_modules/mocha/bin/mocha -r spec/helpers/node-setup.js spec","build":"gulp","start":"gulp server","coverage":"./node_modules/istanbul/lib/cli.js cover ./node_modules/mocha/bin/_mocha -x 'spec/**/*'  -- -r spec/helpers/node-setup.js spec spec/*.spec.js","show-coverage":"open ./coverage/lcov-report/index.html"},"_npmUser":{"name":"ifandelse","email":"jim@ifandelse.com"},"licenses":[{"url":"http://opensource.org/licenses/MIT","type":"MIT"},{"url":"http://opensource.org/licenses/GPL-2.0","type":"GPL"}],"repository":{"url":"git://github.com/ifandelse/machina.js.git","type":"git"},"_npmVersion":"2.7.4","description":"A library for creating powerful and flexible finite state machines. Loosely inspired by Erlang/OTP's gen_fsm behavior.","directories":{"lib":"lib"},"_nodeVersion":"0.12.2","dependencies":{"lodash":"3.x"},"publishConfig":{"registry":"https://registry.npmjs.org"},"devDependencies":{"gulp":"~3.8.11","open":"~0.0.4","bower":"1.x","mocha":"^2.2.5","sinon":"1.14.1","should":"^6.0.3","express":"~3.4.7","gulp-jscs":"^1.6.0","gulp-util":"~3.0.4","gulp-plato":"~1.0.2","gulp-header":"~1.2.2","gulp-jshint":"^1.11.0","gulp-rename":"~1.2.2","gulp-uglify":"~1.2.0","gulp-changed":"^1.2.1","gulp-imports":"~0.0.1","gulp-hint-not":"~0.0.3","jshint-stylish":"^2.0.0","gulp-spawn-mocha":"^2.0.1"}},"1.1.1":{"name":"machina","version":"1.1.1","keywords":["state machine","finite state machine","fsm","async","workflow","state","machina","machina-js","machina.js","machinajs","hierarchical","state chart","state charts"],"author":{"url":"http://ifandelse.com","name":"Jim Cowart"},"_id":"machina@1.1.1","maintainers":[{"name":"ifandelse","email":"jim@ifandelse.com"}],"contributors":[{"url":"http://ifandelse.com","name":"Jim Cowart","email":"jim@ifandelse.com"},{"url":"http://code.dougneiner.com","name":"Doug Neiner","email":"doug@dougneiner.com"},{"url":"https://github.com/fwg","name":"Friedemann Altrock","email":"frodenius@gmail.com"},{"url":"https://github.com/mtrimpe","name":"Michiel Trimpe","email":"michiel@trimpe.nl"},{"url":"https://github.com/bmavity","name":"Brian Mavity"},{"url":"http://github.com/arobson","name":"Alex Robson","email":"arobson@gmail.com"},{"url":"http://github.com/dominicbarnes","name":"Dominic Barnes","email":"dominic@dbarnes.info"},{"url":"http://tim.theenchanter.com/","name":"Tim Harper","email":"timcharper@gmail.com"},{"url":"http://github.com/codelica","name":"James Pooton","email":"james@codelica.com"},{"url":"https://github.com/bradfol","name":"Brad Fol"},{"url":"http://ignaciocarbajo.com","name":"Ignacio Carbajo"}],"homepage":"http://machina-js.org/","bugs":{"url":"http://github.com/ifandelse/machina.js/issues","email":"jim@ifandelse.com"},"dist":{"shasum":"bb77593e2d96eab59227a983be2293b00fdc746f","tarball":"https://registry.npmjs.org/machina/-/machina-1.1.1.tgz","integrity":"sha512-wNHT8aFOfzXK7bUIQ8Qibfqk728KjuOZTJQ79/21icQ7RfiJ8b+dUS8UQiGOWi/bcDIVTQoaHMAIxyQf0xpuYQ==","signatures":[{"sig":"MEUCIQCGxux1WDcJwugULHQ+YvLHBACK5Lei8NPtDpZjdXJVkgIgUh9z7jJr5W1URAJgJJ7DeAvcgwNaq7mrljx9i0z8m6g=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}]},"main":"lib/machina.js","_from":".","files":["LICENSE","lib"],"_shasum":"bb77593e2d96eab59227a983be2293b00fdc746f","engines":{"node":">=0.4.0"},"gitHead":"fa923995f358fd45b342fb609c296e8ad06b7b03","scripts":{"test":"./node_modules/mocha/bin/mocha -r spec/helpers/node-setup.js spec","build":"gulp","start":"gulp server","coverage":"./node_modules/istanbul/lib/cli.js cover ./node_modules/mocha/bin/_mocha -x 'spec/**/*'  -- -r spec/helpers/node-setup.js spec spec/*.spec.js","show-coverage":"open ./coverage/lcov-report/index.html"},"_npmUser":{"name":"ifandelse","email":"jim@ifandelse.com"},"licenses":[{"url":"http://opensource.org/licenses/MIT","type":"MIT"},{"url":"http://opensource.org/licenses/GPL-2.0","type":"GPL"}],"repository":{"url":"git://github.com/ifandelse/machina.js.git","type":"git"},"_npmVersion":"2.10.1","description":"A library for creating powerful and flexible finite state machines. Loosely inspired by Erlang/OTP's gen_fsm behavior.","directories":{"lib":"lib"},"_nodeVersion":"0.12.4","dependencies":{"lodash":"3.x"},"publishConfig":{"registry":"https://registry.npmjs.org"},"devDependencies":{"gulp":"~3.8.11","open":"~0.0.4","bower":"1.x","mocha":"^2.2.5","sinon":"1.14.1","should":"^6.0.3","express":"~3.4.7","gulp-jscs":"^1.6.0","gulp-util":"~3.0.4","gulp-plato":"~1.0.2","gulp-header":"~1.2.2","gulp-jshint":"^1.11.0","gulp-rename":"~1.2.2","gulp-uglify":"~1.2.0","gulp-changed":"^1.2.1","gulp-imports":"~0.0.1","gulp-hint-not":"~0.0.3","jshint-stylish":"^2.0.0","gulp-spawn-mocha":"^2.0.1"}},"1.1.2":{"name":"machina","version":"1.1.2","keywords":["state machine","finite state machine","fsm","async","workflow","state","machina","machina-js","machina.js","machinajs","hierarchical","state chart","state charts"],"author":{"url":"http://ifandelse.com","name":"Jim Cowart"},"_id":"machina@1.1.2","maintainers":[{"name":"ifandelse","email":"jim@ifandelse.com"}],"contributors":[{"url":"http://ifandelse.com","name":"Jim Cowart","email":"jim@ifandelse.com"},{"url":"http://code.dougneiner.com","name":"Doug Neiner","email":"doug@dougneiner.com"},{"url":"https://github.com/fwg","name":"Friedemann Altrock","email":"frodenius@gmail.com"},{"url":"https://github.com/mtrimpe","name":"Michiel Trimpe","email":"michiel@trimpe.nl"},{"url":"https://github.com/bmavity","name":"Brian Mavity"},{"url":"http://github.com/arobson","name":"Alex Robson","email":"arobson@gmail.com"},{"url":"http://github.com/dominicbarnes","name":"Dominic Barnes","email":"dominic@dbarnes.info"},{"url":"http://tim.theenchanter.com/","name":"Tim Harper","email":"timcharper@gmail.com"},{"url":"http://github.com/codelica","name":"James Pooton","email":"james@codelica.com"},{"url":"https://github.com/bradfol","name":"Brad Fol"},{"url":"http://ignaciocarbajo.com","name":"Ignacio Carbajo"}],"homepage":"http://machina-js.org/","bugs":{"url":"http://github.com/ifandelse/machina.js/issues","email":"jim@ifandelse.com"},"dist":{"shasum":"18cabea5fa9eb7c032408eb309feb2af7a837247","tarball":"https://registry.npmjs.org/machina/-/machina-1.1.2.tgz","integrity":"sha512-CF7XZOnnI+CTif9KVJ1LhnkG5jCyejoNAuK4FI7wees/MarwTI7mFiSkVuiRrPg0SuexXk76czfKMcb+r3v8MA==","signatures":[{"sig":"MEUCIQCm0edguuzzjd5CHso8DmLMBbXtfhpfTIypz6IzYPTrQgIgSpHPqHM7We6JJtbyLoCjVdL9XwkmWCyXnVI4h/y9DnQ=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}]},"main":"lib/machina.js","_from":".","files":["LICENSE","lib"],"_shasum":"18cabea5fa9eb7c032408eb309feb2af7a837247","engines":{"node":">=0.4.0"},"gitHead":"d94b0eba7e3b2b49844d97b5fa53a60439114e44","scripts":{"test":"./node_modules/mocha/bin/mocha -r spec/helpers/node-setup.js spec","build":"gulp","start":"gulp server","coverage":"./node_modules/istanbul/lib/cli.js cover ./node_modules/mocha/bin/_mocha -x 'spec/**/*'  -- -r spec/helpers/node-setup.js spec spec/*.spec.js","show-coverage":"open ./coverage/lcov-report/index.html"},"_npmUser":{"name":"ifandelse","email":"jim@ifandelse.com"},"licenses":[{"url":"http://opensource.org/licenses/MIT","type":"MIT"},{"url":"http://opensource.org/licenses/GPL-2.0","type":"GPL"}],"repository":{"url":"git://github.com/ifandelse/machina.js.git","type":"git"},"_npmVersion":"2.10.1","description":"A library for creating powerful and flexible finite state machines. Loosely inspired by Erlang/OTP's gen_fsm behavior.","directories":{"lib":"lib"},"_nodeVersion":"0.12.4","dependencies":{"lodash":"3.x"},"publishConfig":{"registry":"https://registry.npmjs.org"},"devDependencies":{"gulp":"~3.9.0","open":"~0.0.4","bower":"1.x","mocha":"^2.2.5","sinon":"~1.15.3","should":"^6.0.3","express":"~3.4.7","gulp-jscs":"^1.6.0","gulp-util":"~3.0.4","gulp-plato":"~1.0.2","gulp-header":"~1.2.2","gulp-jshint":"^1.11.0","gulp-rename":"~1.2.2","gulp-uglify":"~1.2.0","gulp-changed":"^1.2.1","gulp-imports":"~0.0.1","gulp-hint-not":"~0.0.3","jshint-stylish":"^2.0.1","gulp-spawn-mocha":"^2.2.1"}},"2.0.0-1":{"name":"machina","version":"2.0.0-1","keywords":["state machine","finite state machine","fsm","async","workflow","state","machina","machina-js","machina.js","machinajs","hierarchical","state chart","state charts"],"author":{"url":"http://ifandelse.com","name":"Jim Cowart"},"_id":"machina@2.0.0-1","maintainers":[{"name":"ifandelse","email":"jim@ifandelse.com"}],"contributors":[{"url":"http://ifandelse.com","name":"Jim Cowart","email":"jim@ifandelse.com"},{"url":"http://code.dougneiner.com","name":"Doug Neiner","email":"doug@dougneiner.com"},{"url":"https://github.com/fwg","name":"Friedemann Altrock","email":"frodenius@gmail.com"},{"url":"https://github.com/mtrimpe","name":"Michiel Trimpe","email":"michiel@trimpe.nl"},{"url":"https://github.com/bmavity","name":"Brian Mavity"},{"url":"http://github.com/arobson","name":"Alex Robson","email":"arobson@gmail.com"},{"url":"http://github.com/dominicbarnes","name":"Dominic Barnes","email":"dominic@dbarnes.info"},{"url":"http://tim.theenchanter.com/","name":"Tim Harper","email":"timcharper@gmail.com"},{"url":"http://github.com/codelica","name":"James Pooton","email":"james@codelica.com"},{"url":"https://github.com/bradfol","name":"Brad Fol"},{"url":"http://ignaciocarbajo.com","name":"Ignacio Carbajo"},{"url":"http://joelpurra.com/","name":"Joel Purra"}],"homepage":"http://machina-js.org/","bugs":{"url":"http://github.com/ifandelse/machina.js/issues","email":"jim@ifandelse.com"},"dist":{"shasum":"0f597f45fc6da5e6a2eb344ecac67cad8ef6ebeb","tarball":"https://registry.npmjs.org/machina/-/machina-2.0.0-1.tgz","integrity":"sha512-r0aw11zl0onYZTE8Kb5kbbnaEt4+OGsNJuO0h9LKF+qXbcyvP3DrXeSTgxI9P1lM3f6nOZPHeCqoE2JxTe4Zmg==","signatures":[{"sig":"MEYCIQD/Klde2sv0UUksTG9v5DKMlIXN7uLeVYRxGednXmzYQQIhALJzSnERH1MyOmnFyteCb72Z/f7LGoU4Zdk2BS+Zf3wP","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}]},"main":"lib/machina.js","_from":".","files":["LICENSE","lib"],"_shasum":"0f597f45fc6da5e6a2eb344ecac67cad8ef6ebeb","engines":{"node":">=0.4.0"},"gitHead":"97d3cc05aac32fd5e53111d4d8daad2eea4f86f2","scripts":{"test":"./node_modules/mocha/bin/mocha -r spec/helpers/node-setup.js spec","build":"gulp","start":"gulp server","coverage":"./node_modules/istanbul/lib/cli.js cover ./node_modules/mocha/bin/_mocha -x 'spec/**/*'  -- -r spec/helpers/node-setup.js spec spec/*.spec.js","show-coverage":"open ./coverage/lcov-report/index.html"},"_npmUser":{"name":"ifandelse","email":"jim@ifandelse.com"},"licenses":[{"url":"http://opensource.org/licenses/MIT","type":"MIT"},{"url":"http://opensource.org/licenses/GPL-2.0","type":"GPL"}],"repository":{"url":"git://github.com/ifandelse/machina.js.git","type":"git"},"_npmVersion":"2.14.9","description":"A library for creating powerful and flexible finite state machines. Loosely inspired by Erlang/OTP's gen_fsm behavior.","directories":{"lib":"lib"},"_nodeVersion":"0.12.9","dependencies":{"lodash":"3.x"},"publishConfig":{"registry":"https://registry.npmjs.org"},"devDependencies":{"gulp":"~3.9.0","open":"~0.0.4","bower":"1.x","karma":"^0.13.9","mocha":"^2.2.5","sinon":"~1.11.0","should":"^6.0.3","express":"~3.4.7","istanbul":"^0.3.2","gulp-jscs":"^1.6.0","gulp-util":"~3.0.4","gulp-eslint":"^1.1.1","gulp-header":"~1.2.2","gulp-jshint":"^1.11.0","gulp-rename":"~1.2.2","gulp-uglify":"~1.2.0","karma-mocha":"^0.2.0","gulp-changed":"^1.2.1","gulp-imports":"~0.0.1","gulp-webpack":"^1.5.0","gulp-hint-not":"~0.0.3","karma-webpack":"^1.7.0","imports-loader":"^0.6.3","jshint-stylish":"^2.0.1","karma-coverage":"^0.2.6","gulp-sourcemaps":"^1.6.0","gulp-spawn-mocha":"^2.2.1","source-map-loader":"^0.1.5","karma-spec-reporter":"0.0.20","karma-chrome-launcher":"^0.1.5","karma-safari-launcher":"^0.1.1","karma-firefox-launcher":"^0.1.3","karma-sourcemap-loader":"^0.3.0","karma-phantomjs-launcher":"^0.1.4","istanbul-instrumenter-loader":"^0.1.3"},"_npmOperationalInternal":{"tmp":"tmp/machina-2.0.0-1.tgz_1457839180635_0.9667622111737728","host":"packages-12-west.internal.npmjs.com"}},"2.0.0":{"name":"machina","version":"2.0.0","keywords":["state machine","finite state machine","fsm","async","workflow","state","machina","machina-js","machina.js","machinajs","hierarchical","state chart","state charts"],"author":{"url":"http://ifandelse.com","name":"Jim Cowart"},"_id":"machina@2.0.0","maintainers":[{"name":"ifandelse","email":"jim@ifandelse.com"}],"contributors":[{"url":"http://ifandelse.com","name":"Jim Cowart","email":"jim@ifandelse.com"},{"url":"http://code.dougneiner.com","name":"Doug Neiner","email":"doug@dougneiner.com"},{"url":"https://github.com/fwg","name":"Friedemann Altrock","email":"frodenius@gmail.com"},{"url":"https://github.com/mtrimpe","name":"Michiel Trimpe","email":"michiel@trimpe.nl"},{"url":"https://github.com/bmavity","name":"Brian Mavity"},{"url":"http://github.com/arobson","name":"Alex Robson","email":"arobson@gmail.com"},{"url":"http://github.com/dominicbarnes","name":"Dominic Barnes","email":"dominic@dbarnes.info"},{"url":"http://tim.theenchanter.com/","name":"Tim Harper","email":"timcharper@gmail.com"},{"url":"http://github.com/codelica","name":"James Pooton","email":"james@codelica.com"},{"url":"https://github.com/bradfol","name":"Brad Fol"},{"url":"http://ignaciocarbajo.com","name":"Ignacio Carbajo"},{"url":"http://joelpurra.com/","name":"Joel Purra"}],"homepage":"http://machina-js.org/","bugs":{"url":"http://github.com/ifandelse/machina.js/issues","email":"jim@ifandelse.com"},"dist":{"shasum":"6bb1504f8d376743217c0c43831759f0c93a0620","tarball":"https://registry.npmjs.org/machina/-/machina-2.0.0.tgz","integrity":"sha512-eaL6+m/7yNKUSjnK8zyN9DxGouxKtt2hxkq1I2YH+fvZ530QJG2LzBREmmd3rNPUsiaClWunKy7M+s89YMVrZw==","signatures":[{"sig":"MEQCIGOAvrjFaP6/R8rJESAgn6V1nKxDH9ypt1ToJFTviTkdAiAcOPlOMKk9D0SPB74Ycnc6U3riX1kiXSP9q/UFSurd/g==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}]},"main":"lib/machina.js","_from":".","files":["LICENSE","lib"],"_shasum":"6bb1504f8d376743217c0c43831759f0c93a0620","engines":{"node":">=0.4.0"},"gitHead":"6d2d7cf382f86fb6ef2448156b368549b6367007","scripts":{"lint":"gulp lint","test":"./node_modules/mocha/bin/mocha -r spec/helpers/node-setup.js spec","build":"gulp","mocha":"gulp mocha","start":"gulp server","watch":"gulp watch","format":"gulp format","coverage":"./node_modules/istanbul/lib/cli.js cover ./node_modules/mocha/bin/_mocha -x 'spec/**/*'  -- -r spec/helpers/node-setup.js spec spec/*.spec.js","show-coverage":"open ./coverage/lcov-report/index.html"},"_npmUser":{"name":"ifandelse","email":"jim@ifandelse.com"},"licenses":[{"url":"http://opensource.org/licenses/MIT","type":"MIT"},{"url":"http://opensource.org/licenses/GPL-2.0","type":"GPL"}],"repository":{"url":"git://github.com/ifandelse/machina.js.git","type":"git"},"_npmVersion":"3.8.3","description":"A library for creating powerful and flexible finite state machines. Loosely inspired by Erlang/OTP's gen_fsm behavior.","directories":{"lib":"lib"},"_nodeVersion":"5.10.1","dependencies":{"lodash":"3.x"},"publishConfig":{"registry":"https://registry.npmjs.org"},"devDependencies":{"gulp":"~3.9.0","open":"~0.0.4","bower":"1.x","karma":"^0.13.9","mocha":"^2.2.5","sinon":"~1.11.0","should":"^6.0.3","express":"~3.4.7","istanbul":"^0.3.2","gulp-jscs":"^1.6.0","gulp-util":"~3.0.4","gulp-eslint":"^1.1.1","gulp-header":"~1.2.2","gulp-jshint":"^1.11.0","gulp-rename":"~1.2.2","gulp-uglify":"~1.2.0","karma-mocha":"^0.2.0","gulp-changed":"^1.2.1","gulp-imports":"~0.0.1","gulp-webpack":"^1.5.0","gulp-hint-not":"~0.0.3","karma-webpack":"^1.7.0","imports-loader":"^0.6.3","jshint-stylish":"^2.0.1","karma-coverage":"^0.2.6","gulp-sourcemaps":"^1.6.0","gulp-spawn-mocha":"^2.2.1","source-map-loader":"^0.1.5","karma-spec-reporter":"0.0.20","karma-chrome-launcher":"^0.1.5","karma-safari-launcher":"^0.1.1","karma-firefox-launcher":"^0.1.3","karma-sourcemap-loader":"^0.3.0","karma-phantomjs-launcher":"^0.1.4","istanbul-instrumenter-loader":"^0.1.3"},"_npmOperationalInternal":{"tmp":"tmp/machina-2.0.0.tgz_1466877790011_0.0894124312326312","host":"packages-16-east.internal.npmjs.com"}},"2.0.1":{"name":"machina","version":"2.0.1","keywords":["state machine","finite state machine","fsm","async","workflow","state","machina","machina-js","machina.js","machinajs","hierarchical","state chart","state charts"],"author":{"url":"http://ifandelse.com","name":"Jim Cowart"},"_id":"machina@2.0.1","maintainers":[{"name":"rniemeyer","email":"rniemeyer@gmail.com"},{"name":"ifandelse","email":"jim@ifandelse.com"}],"contributors":[{"url":"http://ifandelse.com","name":"Jim Cowart","email":"jim@ifandelse.com"},{"url":"http://code.dougneiner.com","name":"Doug Neiner","email":"doug@dougneiner.com"},{"url":"https://github.com/fwg","name":"Friedemann Altrock","email":"frodenius@gmail.com"},{"url":"https://github.com/mtrimpe","name":"Michiel Trimpe","email":"michiel@trimpe.nl"},{"url":"https://github.com/bmavity","name":"Brian Mavity"},{"url":"http://github.com/arobson","name":"Alex Robson","email":"arobson@gmail.com"},{"url":"http://github.com/dominicbarnes","name":"Dominic Barnes","email":"dominic@dbarnes.info"},{"url":"http://tim.theenchanter.com/","name":"Tim Harper","email":"timcharper@gmail.com"},{"url":"http://github.com/codelica","name":"James Pooton","email":"james@codelica.com"},{"url":"https://github.com/bradfol","name":"Brad Fol"},{"url":"http://ignaciocarbajo.com","name":"Ignacio Carbajo"},{"url":"http://joelpurra.com/","name":"Joel Purra"}],"homepage":"http://machina-js.org/","bugs":{"url":"http://github.com/ifandelse/machina.js/issues","email":"jim@ifandelse.com"},"dist":{"shasum":"014dcd3a04a5004cbfc2ee8739cfc7d6b7fa79a6","tarball":"https://registry.npmjs.org/machina/-/machina-2.0.1.tgz","fileCount":8,"integrity":"sha512-Qe3pp73VgjiXe22/Ncr1L/0pR1SDX2Yb/hVVakMh4y15ygL/4zVscv6z3qyyjmAHiQl4tTi8nntolomPETE6bA==","signatures":[{"sig":"MEQCIBp9e9U1ySVuRQ8lvU23GoJRfdNianHnKZLRdymaSxQUAiBPqYjZaaa5cVUtknWwuS/WWg6ULbfz6v/PCo7u/Qtt1A==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":230320},"main":"lib/machina.js","files":["LICENSE","lib"],"engines":{"node":">=0.4.0"},"gitHead":"b4164aeca5747d16a043aab3dda818bcf888bd9b","scripts":{"lint":"gulp lint","test":"./node_modules/mocha/bin/mocha -r spec/helpers/node-setup.js spec","build":"gulp","mocha":"gulp mocha","start":"gulp server","watch":"gulp watch","format":"gulp format","coverage":"./node_modules/istanbul/lib/cli.js cover ./node_modules/mocha/bin/_mocha -x 'spec/**/*'  -- -r spec/helpers/node-setup.js spec spec/*.spec.js","show-coverage":"open ./coverage/lcov-report/index.html"},"_npmUser":{"name":"rniemeyer","email":"rniemeyer@gmail.com"},"licenses":[{"url":"http://opensource.org/licenses/MIT","type":"MIT"},{"url":"http://opensource.org/licenses/GPL-2.0","type":"GPL"}],"repository":{"url":"git://github.com/ifandelse/machina.js.git","type":"git"},"_npmVersion":"5.6.0","description":"A library for creating powerful and flexible finite state machines. Loosely inspired by Erlang/OTP's gen_fsm behavior.","directories":{"lib":"lib"},"_nodeVersion":"8.9.4","dependencies":{"lodash":"3.x"},"publishConfig":{"registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"devDependencies":{"gulp":"~3.9.0","open":"~0.0.4","bower":"1.x","karma":"^0.13.9","mocha":"^2.2.5","sinon":"~1.11.0","should":"^6.0.3","express":"~3.4.7","istanbul":"^0.3.2","gulp-jscs":"^1.6.0","gulp-util":"~3.0.4","gulp-eslint":"^1.1.1","gulp-header":"~1.2.2","gulp-jshint":"^1.11.0","gulp-rename":"~1.2.2","gulp-uglify":"~1.2.0","karma-mocha":"^0.2.0","gulp-changed":"^1.2.1","gulp-imports":"~0.0.1","gulp-webpack":"^1.5.0","gulp-hint-not":"~0.0.3","karma-webpack":"^1.7.0","imports-loader":"^0.6.3","jshint-stylish":"^2.0.1","karma-coverage":"^0.2.6","gulp-sourcemaps":"^1.6.0","gulp-spawn-mocha":"^2.2.1","source-map-loader":"^0.1.5","karma-spec-reporter":"0.0.20","karma-chrome-launcher":"^0.1.5","karma-safari-launcher":"^0.1.1","karma-firefox-launcher":"^0.1.3","karma-sourcemap-loader":"^0.3.0","karma-phantomjs-launcher":"^0.1.4","istanbul-instrumenter-loader":"^0.1.3"},"_npmOperationalInternal":{"tmp":"tmp/machina_2.0.1_1517958247524_0.7717539146337533","host":"s3://npm-registry-packages"}},"2.0.2":{"name":"machina","version":"2.0.2","keywords":["state machine","finite state machine","fsm","async","workflow","state","machina","machina-js","machina.js","machinajs","hierarchical","state chart","state charts"],"author":{"url":"http://ifandelse.com","name":"Jim Cowart"},"_id":"machina@2.0.2","maintainers":[{"name":"ifandelse","email":"jim@ifandelse.com"},{"name":"rniemeyer","email":"rniemeyer@gmail.com"}],"contributors":[{"url":"http://ifandelse.com","name":"Jim Cowart","email":"jim@ifandelse.com"},{"url":"http://code.dougneiner.com","name":"Doug Neiner","email":"doug@dougneiner.com"},{"url":"https://github.com/fwg","name":"Friedemann Altrock","email":"frodenius@gmail.com"},{"url":"https://github.com/mtrimpe","name":"Michiel Trimpe","email":"michiel@trimpe.nl"},{"url":"https://github.com/bmavity","name":"Brian Mavity"},{"url":"http://github.com/arobson","name":"Alex Robson","email":"arobson@gmail.com"},{"url":"http://github.com/dominicbarnes","name":"Dominic Barnes","email":"dominic@dbarnes.info"},{"url":"http://tim.theenchanter.com/","name":"Tim Harper","email":"timcharper@gmail.com"},{"url":"http://github.com/codelica","name":"James Pooton","email":"james@codelica.com"},{"url":"https://github.com/bradfol","name":"Brad Fol"},{"url":"http://ignaciocarbajo.com","name":"Ignacio Carbajo"},{"url":"http://joelpurra.com/","name":"Joel Purra"}],"homepage":"http://machina-js.org/","bugs":{"url":"http://github.com/ifandelse/machina.js/issues","email":"jim@ifandelse.com"},"dist":{"shasum":"aa17a51293abb02313da4e6120f234d3eadbf650","tarball":"https://registry.npmjs.org/machina/-/machina-2.0.2.tgz","fileCount":8,"integrity":"sha512-9U9g4eQjQ2JARX7h/051r65EQEfFfpPxoSjVmUMJG6gnfjVjM+rjwVLoq7Z9NovjYm7AR3oTWWPtHVlgeSZzYw==","signatures":[{"sig":"MEYCIQDBnIacNiHYs1NhrEjMysiuAC95uAtgU4fQD+8UPOwjBgIhAL7KkeNEKxf7Bnmxem4lB/WCXjxqsMWVyFeUccFdK9TZ","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":230489},"main":"lib/machina.js","files":["LICENSE","lib"],"engines":{"node":">=0.4.0"},"gitHead":"97e24aeea994d22a9c95c5b57d5e8cdce995b792","scripts":{"lint":"gulp lint","test":"./node_modules/mocha/bin/mocha -r spec/helpers/node-setup.js spec","build":"gulp","mocha":"gulp mocha","start":"gulp server","watch":"gulp watch","format":"gulp format","coverage":"./node_modules/istanbul/lib/cli.js cover ./node_modules/mocha/bin/_mocha -x 'spec/**/*'  -- -r spec/helpers/node-setup.js spec spec/*.spec.js","show-coverage":"open ./coverage/lcov-report/index.html"},"_npmUser":{"name":"ifandelse","email":"jim@ifandelse.com"},"licenses":[{"url":"http://opensource.org/licenses/MIT","type":"MIT"},{"url":"http://opensource.org/licenses/GPL-2.0","type":"GPL"}],"repository":{"url":"git://github.com/ifandelse/machina.js.git","type":"git"},"_npmVersion":"5.6.0","description":"A library for creating powerful and flexible finite state machines. Loosely inspired by Erlang/OTP's gen_fsm behavior.","directories":{"lib":"lib"},"_nodeVersion":"8.9.4","dependencies":{"lodash":"3.x"},"publishConfig":{"registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"devDependencies":{"gulp":"~3.9.0","open":"~0.0.4","bower":"1.x","karma":"^0.13.9","mocha":"^2.2.5","sinon":"~1.11.0","should":"^6.0.3","express":"~3.4.7","istanbul":"^0.3.2","gulp-jscs":"^1.6.0","gulp-util":"~3.0.4","gulp-eslint":"^1.1.1","gulp-header":"~1.2.2","gulp-jshint":"^1.11.0","gulp-rename":"~1.2.2","gulp-uglify":"~1.2.0","karma-mocha":"^0.2.0","gulp-changed":"^1.2.1","gulp-imports":"~0.0.1","gulp-webpack":"^1.5.0","gulp-hint-not":"~0.0.3","karma-webpack":"^1.7.0","imports-loader":"^0.6.3","jshint-stylish":"^2.0.1","karma-coverage":"^0.2.6","gulp-sourcemaps":"^1.6.0","gulp-spawn-mocha":"^2.2.1","source-map-loader":"^0.1.5","karma-spec-reporter":"0.0.20","karma-chrome-launcher":"^0.1.5","karma-safari-launcher":"^0.1.1","karma-firefox-launcher":"^0.1.3","karma-sourcemap-loader":"^0.3.0","karma-phantomjs-launcher":"^0.1.4","istanbul-instrumenter-loader":"^0.1.3"},"_npmOperationalInternal":{"tmp":"tmp/machina_2.0.2_1518750608332_0.0625335561996545","host":"s3://npm-registry-packages"}},"4.0.0":{"name":"machina","version":"4.0.0","keywords":["state machine","finite state machine","fsm","async","workflow","state","machina","machina-js","machina.js","machinajs","hierarchical","state chart","state charts"],"author":{"url":"http://ifandelse.com","name":"Jim Cowart"},"_id":"machina@4.0.0","maintainers":[{"name":"ifandelse","email":"jim@ifandelse.com"},{"name":"rniemeyer","email":"rniemeyer@gmail.com"}],"contributors":[{"url":"http://ifandelse.com","name":"Jim Cowart","email":"jim@ifandelse.com"},{"url":"http://code.dougneiner.com","name":"Doug Neiner","email":"doug@dougneiner.com"},{"url":"https://github.com/fwg","name":"Friedemann Altrock","email":"frodenius@gmail.com"},{"url":"https://github.com/mtrimpe","name":"Michiel Trimpe","email":"michiel@trimpe.nl"},{"url":"https://github.com/bmavity","name":"Brian Mavity"},{"url":"http://github.com/arobson","name":"Alex Robson","email":"arobson@gmail.com"},{"url":"http://github.com/dominicbarnes","name":"Dominic Barnes","email":"dominic@dbarnes.info"},{"url":"http://tim.theenchanter.com/","name":"Tim Harper","email":"timcharper@gmail.com"},{"url":"http://github.com/codelica","name":"James Pooton","email":"james@codelica.com"},{"url":"https://github.com/bradfol","name":"Brad Fol"},{"url":"http://ignaciocarbajo.com","name":"Ignacio Carbajo"},{"url":"http://joelpurra.com/","name":"Joel Purra"}],"homepage":"http://machina-js.org/","bugs":{"url":"http://github.com/ifandelse/machina.js/issues","email":"jim@ifandelse.com"},"dist":{"shasum":"89dd97377cd39b81cbf2e48448df796b1aae30f7","tarball":"https://registry.npmjs.org/machina/-/machina-4.0.0.tgz","fileCount":8,"integrity":"sha512-KlzAP3VzwqQ6/0cib2jIh/Ztword31dWHzOOr9T/xQk+qzjCnKY3EvmHlwLw7FcOKGnz0JorJVBapOgeO7sxjw==","signatures":[{"sig":"MEUCIQCLn1QvJSEB2pREVtioCI1Ckl19AOi8NNPN+ij3b2VGfAIgb3u5L03G5FnYNBCvWGsXNnY5qSRaJ5f5LJV9uoWpwXI=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":233609,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJb0il0CRA9TVsSAnZWagAA8+gQAJOhQYqz81T+xmPVmqk1\nii+S3Lccouu0VykYpCD2Og3vATYNe+vfl3dKnlKxX2u+HcHk5lgL75ymtmK8\nhRvO+Ls9Ab5b5lJlMMQWlhwI2vB5eYJb6m+TnCiGu2qJ9fOvqZnEjHaosg1U\nKiXPbalsOxNjEK6mfz0eusTQDpiMZbb61pFQIUe45auZF+7BTviBvHsyR6U6\nH1h5Ze9gfuX7sFe01s9Co+Ygr922tuPWvrr+RqWiWH98xscaBejitbO1g8xM\njyGcqoXnul+iM/22Cdqvum9JuzBp5UKOJvBjdByOflvU+nZK0ioDEPrKLEIe\nEJLDceKgu0XCqaL4FaLPl+L4JYBLDxGnHutY8LBBcSWhJSjFeBcz4WILQ2Vb\n9vk8WQwiiX5+R2WzdwVg3I/KWhZ9tmg/4XR2tsKbaIXltBrbG0yl/Di9xCwO\n1301b+tihHy1GsG0BoXtgjaXAqqQsWJ8KYn6D1OzMfbkLUF3ckoCVFy2aW1D\nIb/LNIpjW6aO7T9cEQOJK1fSF0hnfDy2LiUyrj11Q1vN8vK7wqjBVOxNObrq\n7m/QMrZ+PzmucPUPA/cYcuEuFruDI5d5Eoryg4C2nEenk0WqQHJ08AFjFegx\nm41BQwfBIm8rxfsjzx3yYdGSwdSy0prov3kPHCsuPKQF67kvsBcMiZ/N5zMl\nURyC\r\n=i6F+\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/machina.js","engines":{"node":">=0.4.0"},"gitHead":"19c476f46b4499e01f061544d50aa5ce3d88c660","scripts":{"lint":"gulp lint","test":"./node_modules/mocha/bin/mocha -r spec/helpers/node-setup.js spec","build":"gulp","mocha":"gulp mocha","start":"gulp server","watch":"gulp watch","format":"gulp format","coverage":"./node_modules/istanbul/lib/cli.js cover ./node_modules/mocha/bin/_mocha -x 'spec/**/*'  -- -r spec/helpers/node-setup.js spec spec/*.spec.js","show-coverage":"open ./coverage/lcov-report/index.html"},"_npmUser":{"name":"ifandelse","email":"jim@ifandelse.com"},"licenses":[{"url":"http://opensource.org/licenses/MIT","type":"MIT"},{"url":"http://opensource.org/licenses/GPL-2.0","type":"GPL"}],"repository":{"url":"git://github.com/ifandelse/machina.js.git","type":"git"},"_npmVersion":"5.6.0","description":"A library for creating powerful and flexible finite state machines. Loosely inspired by Erlang/OTP's gen_fsm behavior.","directories":{"lib":"lib"},"_nodeVersion":"8.11.4","dependencies":{"lodash":"4.x"},"publishConfig":{"registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"devDependencies":{"gulp":"~3.9.0","open":"~0.0.4","bower":"1.x","karma":"^0.13.9","mocha":"^2.2.5","sinon":"~1.11.0","should":"^6.0.3","express":"~3.4.7","istanbul":"^0.3.2","gulp-jscs":"^1.6.0","gulp-util":"~3.0.4","gulp-eslint":"^1.1.1","gulp-header":"~1.2.2","gulp-jshint":"^1.11.0","gulp-rename":"~1.2.2","gulp-uglify":"~1.2.0","karma-mocha":"^0.2.0","gulp-changed":"^1.2.1","gulp-imports":"~0.0.1","gulp-webpack":"^1.5.0","gulp-hint-not":"~0.0.3","karma-webpack":"^1.7.0","imports-loader":"^0.6.3","jshint-stylish":"^2.0.1","karma-coverage":"^0.2.6","gulp-sourcemaps":"^1.6.0","gulp-spawn-mocha":"^2.2.1","source-map-loader":"^0.1.5","karma-spec-reporter":"0.0.20","karma-chrome-launcher":"^0.1.5","karma-safari-launcher":"^0.1.1","karma-firefox-launcher":"^0.1.3","karma-sourcemap-loader":"^0.3.0","karma-phantomjs-launcher":"^0.1.4","istanbul-instrumenter-loader":"^0.1.3"},"_npmOperationalInternal":{"tmp":"tmp/machina_4.0.0_1540499827880_0.8403747750431949","host":"s3://npm-registry-packages"}},"4.0.1":{"name":"machina","version":"4.0.1","keywords":["state machine","finite state machine","fsm","async","workflow","state","machina","machina-js","machina.js","machinajs","hierarchical","state chart","state charts"],"author":{"url":"http://ifandelse.com","name":"Jim Cowart"},"_id":"machina@4.0.1","maintainers":[{"name":"ifandelse","email":"jim@ifandelse.com"},{"name":"rniemeyer","email":"rniemeyer@gmail.com"}],"contributors":[{"url":"http://ifandelse.com","name":"Jim Cowart","email":"jim@ifandelse.com"},{"url":"http://code.dougneiner.com","name":"Doug Neiner","email":"doug@dougneiner.com"},{"url":"https://github.com/fwg","name":"Friedemann Altrock","email":"frodenius@gmail.com"},{"url":"https://github.com/mtrimpe","name":"Michiel Trimpe","email":"michiel@trimpe.nl"},{"url":"https://github.com/bmavity","name":"Brian Mavity"},{"url":"http://github.com/arobson","name":"Alex Robson","email":"arobson@gmail.com"},{"url":"http://github.com/dominicbarnes","name":"Dominic Barnes","email":"dominic@dbarnes.info"},{"url":"http://tim.theenchanter.com/","name":"Tim Harper","email":"timcharper@gmail.com"},{"url":"http://github.com/codelica","name":"James Pooton","email":"james@codelica.com"},{"url":"https://github.com/bradfol","name":"Brad Fol"},{"url":"http://ignaciocarbajo.com","name":"Ignacio Carbajo"},{"url":"http://joelpurra.com/","name":"Joel Purra"}],"homepage":"http://machina-js.org/","bugs":{"url":"http://github.com/ifandelse/machina.js/issues","email":"jim@ifandelse.com"},"dist":{"shasum":"f853a51252950386154cb13ca4336d1b511ee92c","tarball":"https://registry.npmjs.org/machina/-/machina-4.0.1.tgz","fileCount":8,"integrity":"sha512-ZCCNmsNw1tsTOsWXriIah9LLwdlJraPn26xPU00jP/L06UpDPdCE7or8y2qpZ2GIbYAJ65j0ubKN/e1TR34syA==","signatures":[{"sig":"MEUCIQCITe25iBkKWgt+BtCyB1VqvMJNbifIeza/PhV5V863ngIgElTfST69q9EdpRV6NbhMDAXpkeJQeaUb+2xmE3FGrns=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":233666,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJb0iwjCRA9TVsSAnZWagAA54QP/jGfX2letTc4A6tZSup0\nyNPXUfAwJjFx5Ue0vEnEGsItHJ8ZOh0tLOqtHN2VMhLvtabrB0/2NLVDH2YK\nLqJnPBCNEMJpwbwNneJNm2UDyIGHsZUuIoIyltQVup+5NwdMRLIgw7zYYtRO\nQ9bzkrUyQZFnWXbwUwRxRP7hjjYtIP/D+VD7omqZCvYmyooV8ubagnicb0WQ\neyAULT1Z+Vt9sc71yV/rv5/NvBeTdGZY4M5xhcjxAOILwTg7wmYXS6mAbIxI\nMu1igfSppE8tEqxV367tvtNr8YQSl3dW6I9m3xjui45s+sXYEYB1cgQAKiYF\ncUExcJ/ML9j0kj5MupO25pdlb6hktE6aIUKfq1r4z/7O+Xg9qG7RJonYg5j6\ne7VQ2QDIE9fNlIpmSDsjcA/97Fp00uZuQk19YWMwDLuloUw0Y+X8gGVXBiZR\n+r/NCbEX+8X95y/iFrLX19/SXDRcpnofDgh9QSgexzJiFq8UKHhGd/lcpcBk\nfEY+1DfDVKDXioppoWXAZlB975I1j8M3c/OjWbLugEmpGO5yPz7qrN6aW1VK\nKcMHY/xqb51A8Dx6wX+0V7ZC7laL1/CLYFfdcvrUD4PqTHvc3f8UCQEkrEvK\n8QyxeN6qgtmnIisaK043D68vJdR9E+fMuhaF90szBa7jgGv9f9yLwdAEmJMt\n6cvT\r\n=ZQmA\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/machina.js","engines":{"node":">=0.4.0"},"gitHead":"b049e163956e4f2a1bb98b7f2da10652f28dbe69","scripts":{"lint":"gulp lint","test":"./node_modules/mocha/bin/mocha -r spec/helpers/node-setup.js spec","build":"gulp","mocha":"gulp mocha","start":"gulp server","watch":"gulp watch","format":"gulp format","coverage":"./node_modules/istanbul/lib/cli.js cover ./node_modules/mocha/bin/_mocha -x 'spec/**/*'  -- -r spec/helpers/node-setup.js spec spec/*.spec.js","show-coverage":"open ./coverage/lcov-report/index.html"},"_npmUser":{"name":"ifandelse","email":"jim@ifandelse.com"},"licenses":[{"url":"http://opensource.org/licenses/MIT","type":"MIT"},{"url":"http://opensource.org/licenses/GPL-2.0","type":"GPL"}],"repository":{"url":"git://github.com/ifandelse/machina.js.git","type":"git"},"_npmVersion":"5.6.0","description":"A library for creating powerful and flexible finite state machines. Loosely inspired by Erlang/OTP's gen_fsm behavior.","directories":{"lib":"lib"},"_nodeVersion":"8.11.4","dependencies":{"lodash":"4.x"},"publishConfig":{"registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"devDependencies":{"gulp":"~3.9.0","open":"~0.0.4","bower":"1.x","karma":"^0.13.9","mocha":"^2.2.5","sinon":"~1.11.0","should":"^6.0.3","express":"^3.11.0","istanbul":"^0.3.2","gulp-jscs":"^1.6.0","gulp-util":"~3.0.4","gulp-eslint":"^1.1.1","gulp-header":"~1.2.2","gulp-jshint":"^1.11.0","gulp-rename":"~1.2.2","gulp-uglify":"~1.2.0","karma-mocha":"^0.2.0","gulp-changed":"^1.2.1","gulp-imports":"~0.0.1","gulp-webpack":"^1.5.0","gulp-hint-not":"~0.0.3","karma-webpack":"^1.7.0","imports-loader":"^0.6.3","jshint-stylish":"^2.0.1","karma-coverage":"^0.2.6","gulp-sourcemaps":"^1.6.0","gulp-spawn-mocha":"^2.2.1","source-map-loader":"^0.1.5","karma-spec-reporter":"0.0.20","karma-chrome-launcher":"^0.1.5","karma-safari-launcher":"^0.1.1","karma-firefox-launcher":"^0.1.3","karma-sourcemap-loader":"^0.3.0","karma-phantomjs-launcher":"^0.1.4","istanbul-instrumenter-loader":"^0.1.3"},"_npmOperationalInternal":{"tmp":"tmp/machina_4.0.1_1540500514314_0.7200102521409775","host":"s3://npm-registry-packages"}},"4.0.2":{"name":"machina","version":"4.0.2","keywords":["state machine","finite state machine","fsm","async","workflow","state","machina","machina-js","machina.js","machinajs","hierarchical","state chart","state charts"],"author":{"url":"http://ifandelse.com","name":"Jim Cowart"},"_id":"machina@4.0.2","maintainers":[{"name":"ifandelse","email":"jim@ifandelse.com"},{"name":"rniemeyer","email":"rniemeyer@gmail.com"}],"contributors":[{"url":"http://ifandelse.com","name":"Jim Cowart","email":"jim@ifandelse.com"},{"url":"http://code.dougneiner.com","name":"Doug Neiner","email":"doug@dougneiner.com"},{"url":"https://github.com/fwg","name":"Friedemann Altrock","email":"frodenius@gmail.com"},{"url":"https://github.com/mtrimpe","name":"Michiel Trimpe","email":"michiel@trimpe.nl"},{"url":"https://github.com/bmavity","name":"Brian Mavity"},{"url":"http://github.com/arobson","name":"Alex Robson","email":"arobson@gmail.com"},{"url":"http://github.com/dominicbarnes","name":"Dominic Barnes","email":"dominic@dbarnes.info"},{"url":"http://tim.theenchanter.com/","name":"Tim Harper","email":"timcharper@gmail.com"},{"url":"http://github.com/codelica","name":"James Pooton","email":"james@codelica.com"},{"url":"https://github.com/bradfol","name":"Brad Fol"},{"url":"http://ignaciocarbajo.com","name":"Ignacio Carbajo"},{"url":"http://joelpurra.com/","name":"Joel Purra"}],"homepage":"http://machina-js.org/","bugs":{"url":"http://github.com/ifandelse/machina.js/issues","email":"jim@ifandelse.com"},"dist":{"shasum":"7ba13ea317fafc5c64cde75337fad168e1ac3937","tarball":"https://registry.npmjs.org/machina/-/machina-4.0.2.tgz","fileCount":8,"integrity":"sha512-OOlFrW1rd783S6tF36v5Ie/TM64gfvSl9kYLWL2cPA31J71HHWW3XrgSe1BZSFAPkh8532CMJMLv/s9L2aopiA==","signatures":[{"sig":"MEYCIQDz7cuSYpyKbgswVqNgHGkWHRQoejOARXO24CYvheICvgIhALhlSLsQqa2ldu9NBgw82TmzlAjfZl7EMiIaR0rkHM+J","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":233710,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJb08AnCRA9TVsSAnZWagAAO4QP/1sinuetWPbD5lp8pfop\nvfHYi2jLGzTJIK9mqGrv5xKsBWTpAqFXrw9tf/WZsVdUpLxtKtAALlBDK77P\n4wkFN/18Xm1L2iQJQwSPAA/xTcNrLJv852Sc4sXyugynMGViPO9Ef9KiLiML\nM/8VyBmaR1Cs57dOQhRzgU9gnfE16/0q8FKUmUtvMhxYl0M23Wu6MHYtOdCY\nk3GXSXYR9YMuWrLR7is6AT8hhRxrDLhLaFhqaPoNxOfbhv3zKw4SwohrrX/B\nO4GUYYcHaNeAsty+CLKVi40xYdlgypZcqjh8U9lOIRVP10uOD6LKq18WvS/x\nw/l4p2yl+yhPNa4VlL8GUczKs8ATUE+dH7q/fzEJ4H8n9a1G3oVafC0kPrji\nmDZvqn9BW1NbZUCPFdFHuLjQSEKcmIXuNGefo80s7iPyogOUpO2a7tYO1qEz\n4+FbiErxnry4ga4yc+YCzYR+LpnIUbXbJw0/C9rFeNpTZZsON3Kxgo4kxRCF\nPL6yYHpI4T+er3iBmVBIsZonBXDb8mcCiOrowMXnw8Y7AlbinZxvHpHjcklc\nCOHZvlzzZ3Abi+p8iiUqb8x1ueyrQa0bdIlHb2iCakwisjp6Aff16wdOHlZb\nSfVnc0cyrLUkjfYHinOgLnnhCrIGtOgLWx7VknzM9OTfQDPu1/HYuXDz7gZ7\nk+ly\r\n=TyPI\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/machina.js","engines":{"node":">=0.4.0"},"gitHead":"98e38328f64cbe91d871ff64130dbf52492f6777","scripts":{"lint":"gulp lint","test":"./node_modules/mocha/bin/mocha -r spec/helpers/node-setup.js spec","build":"gulp","mocha":"gulp mocha","start":"gulp server","watch":"gulp watch","format":"gulp format","coverage":"./node_modules/istanbul/lib/cli.js cover ./node_modules/mocha/bin/_mocha -x 'spec/**/*'  -- -r spec/helpers/node-setup.js spec spec/*.spec.js","show-coverage":"open ./coverage/lcov-report/index.html"},"_npmUser":{"name":"ifandelse","email":"jim@ifandelse.com"},"licenses":[{"url":"http://opensource.org/licenses/MIT","type":"MIT"},{"url":"http://opensource.org/licenses/GPL-2.0","type":"GPL"}],"repository":{"url":"git://github.com/ifandelse/machina.js.git","type":"git"},"_npmVersion":"5.6.0","description":"A library for creating powerful and flexible finite state machines. Loosely inspired by Erlang/OTP's gen_fsm behavior.","directories":{"lib":"lib"},"_nodeVersion":"8.11.4","dependencies":{"lodash":"^4.17.5"},"publishConfig":{"registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"devDependencies":{"gulp":"~3.9.0","open":"~0.0.4","bower":"1.x","karma":"^0.13.9","mocha":"^2.2.5","sinon":"~1.11.0","should":"^6.0.3","express":"^3.11.0","istanbul":"^0.3.2","gulp-jscs":"^1.6.0","gulp-util":"~3.0.4","gulp-eslint":"^1.1.1","gulp-header":"~1.2.2","gulp-jshint":"^1.11.0","gulp-rename":"~1.2.2","gulp-uglify":"~1.2.0","karma-mocha":"^0.2.0","gulp-changed":"^1.2.1","gulp-imports":"~0.0.1","gulp-webpack":"^1.5.0","gulp-hint-not":"~0.0.3","karma-webpack":"^1.7.0","imports-loader":"^0.6.3","jshint-stylish":"^2.0.1","karma-coverage":"^0.2.6","gulp-sourcemaps":"^1.6.0","gulp-spawn-mocha":"^2.2.1","source-map-loader":"^0.1.5","karma-spec-reporter":"0.0.20","karma-chrome-launcher":"^0.1.5","karma-safari-launcher":"^0.1.1","karma-firefox-launcher":"^0.1.3","karma-sourcemap-loader":"^0.3.0","karma-phantomjs-launcher":"^0.1.4","istanbul-instrumenter-loader":"^0.1.3"},"_npmOperationalInternal":{"tmp":"tmp/machina_4.0.2_1540603941614_0.8659662729833508","host":"s3://npm-registry-packages"}},"6.0.0":{"name":"machina","version":"6.0.0","author":{"url":"http://ifandelse.com","name":"Jim Cowart"},"license":"MIT","_id":"machina@6.0.0","maintainers":[{"name":"ifandelse","email":"jim@ifandelse.com"},{"name":"rniemeyer","email":"rniemeyer@gmail.com"}],"dist":{"shasum":"3064b6fc15eb06698fd92d897c8e67d25b9edb83","tarball":"https://registry.npmjs.org/machina/-/machina-6.0.0.tgz","fileCount":9,"integrity":"sha512-mpi15kG8L17PYCZKHEZyIPzr6W1b4a3tJKRHDMYW5np/VBuhBYpV71q08LF0mxl3V4W7e6+I/tNaYqu7gzYPbQ==","signatures":[{"sig":"MEYCIQD4kXPd/O1JHVF77FmApllCnc3jwDS6SGBA68LM70M0ogIhAMkUxdjzciV/xik4Tvmu38cLHoAw1NeYSQeRbwwGSmju","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":269846},"main":"dist/index.js","_from":"file:machina-6.0.0.tgz","types":"dist/index.d.ts","module":"dist/index.mjs","engines":{"node":">=22.22"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.mjs","require":"./dist/index.js"}},"scripts":{"dev":"tsup --watch","lint":"ESLINT_USE_FLAT_CONFIG=false eslint --config ../../.eslintrc.js 'src/**/*.{ts,tsx}'","test":"jest --passWithNoTests","build":"tsup","test:watch":"jest --watch"},"_npmUser":{"name":"ifandelse","email":"jim@ifandelse.com"},"_resolved":"/private/var/folders/87/d50pddj51hd9dl_947hfq1tc0000gn/T/cdbfcc3ef3b2f6a115c0ee37306d5517/machina-6.0.0.tgz","_integrity":"sha512-mpi15kG8L17PYCZKHEZyIPzr6W1b4a3tJKRHDMYW5np/VBuhBYpV71q08LF0mxl3V4W7e6+I/tNaYqu7gzYPbQ==","_npmVersion":"10.9.4","description":"Focused finite state machines for JavaScript and TypeScript. States in, states out.","directories":{},"sideEffects":false,"_nodeVersion":"22.22.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^30.2.0","tsup":"^8.5.1","eslint":"^9.39.2","ts-jest":"^29.4.6","typescript":"^5.9.3"},"_npmOperationalInternal":{"tmp":"tmp/machina_6.0.0_1771811178631_0.17654829283460471","host":"s3://npm-registry-packages-npm-production"}},"6.1.0":{"name":"machina","version":"6.1.0","author":{"url":"http://ifandelse.com","name":"Jim Cowart"},"license":"MIT","_id":"machina@6.1.0","maintainers":[{"name":"ifandelse","email":"jim@ifandelse.com"},{"name":"rniemeyer","email":"rniemeyer@gmail.com"}],"homepage":"https://machina-js.org/","bugs":{"url":"http://github.com/ifandelse/machina.js/issues"},"dist":{"shasum":"16e948b6b2991a9249fb75e28979719de8cf90e6","tarball":"https://registry.npmjs.org/machina/-/machina-6.1.0.tgz","fileCount":11,"integrity":"sha512-aiQb3WgWiKVbhtmfnp3DV6lcqeqA63cAisILpI7W7SZCvQt2Ar/jaMRer3In8Z8XdktwHEC0sV7VcIJ0yF2gCw==","signatures":[{"sig":"MEUCIC0WH1Bt6G0db9TMJaKglKHEWMLZqO2AacMsFkSqIbFDAiEApIzrXwxVu9S9MOx9XlSFxIV5d77biPhrtYagkqFHi4A=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":269486},"main":"dist/index.cjs","_from":"file:machina-6.1.0.tgz","types":"dist/index.d.mts","module":"dist/index.mjs","engines":{"node":">=22.22"},"exports":{".":{"types":"./dist/index.d.mts","import":"./dist/index.mjs","require":"./dist/index.cjs"}},"scripts":{"dev":"tsdown --watch","lint":"ESLINT_USE_FLAT_CONFIG=false eslint --config ../../.eslintrc.js 'src/**/*.{ts,tsx}'","test":"jest --passWithNoTests","build":"tsdown","test:watch":"jest --watch"},"_npmUser":{"name":"ifandelse","email":"jim@ifandelse.com"},"licenses":[{"url":"http://opensource.org/licenses/MIT","type":"MIT"},{"url":"http://opensource.org/licenses/GPL-2.0","type":"GPL"}],"_resolved":"/private/var/folders/87/d50pddj51hd9dl_947hfq1tc0000gn/T/2a499b09688c5d6a22204c1b26c5614a/machina-6.1.0.tgz","_integrity":"sha512-aiQb3WgWiKVbhtmfnp3DV6lcqeqA63cAisILpI7W7SZCvQt2Ar/jaMRer3In8Z8XdktwHEC0sV7VcIJ0yF2gCw==","repository":{"url":"git://github.com/ifandelse/machina.js.git","type":"git"},"_npmVersion":"10.9.4","description":"Focused finite state machines for JavaScript and TypeScript. States in, states out.","directories":{},"sideEffects":false,"_nodeVersion":"22.22.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^30.2.0","eslint":"^9.39.2","tsdown":"^0.20.3","ts-jest":"^29.4.6","typescript":"^5.9.3"},"_npmOperationalInternal":{"tmp":"tmp/machina_6.1.0_1772211548558_0.15207317850959878","host":"s3://npm-registry-packages-npm-production"}},"6.2.0":{"name":"machina","version":"6.2.0","author":{"url":"http://ifandelse.com","name":"Jim Cowart"},"license":"MIT","_id":"machina@6.2.0","maintainers":[{"name":"ifandelse","email":"jim@ifandelse.com"},{"name":"rniemeyer","email":"rniemeyer@gmail.com"}],"homepage":"https://machina-js.org/","bugs":{"url":"http://github.com/ifandelse/machina.js/issues"},"dist":{"shasum":"9cff071be26236fdf3015a961ae3a1945ff80901","tarball":"https://registry.npmjs.org/machina/-/machina-6.2.0.tgz","fileCount":11,"integrity":"sha512-fFMhStozZFsg9tNJ+Q3Bz0MrRf5j2XaShBDWiXDTmJqdB9Y8Clb+TGI/aJsMAnb07HUYQ7Zo072cOcvBSENRVw==","signatures":[{"sig":"MEUCIBqDkYv3GRolvL8T9GZnI90OywQdU0vHIZ8RWBQxmxuFAiEArUVE1a7skPkp+JA4Zl/iGzpGIt+SC46R7O2tl0/nnCs=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":270174},"main":"dist/index.cjs","_from":"file:machina-6.2.0.tgz","types":"dist/index.d.mts","module":"dist/index.mjs","engines":{"node":">=22.22"},"exports":{".":{"types":"./dist/index.d.mts","import":"./dist/index.mjs","require":"./dist/index.cjs"}},"scripts":{"dev":"tsdown --watch","lint":"eslint 'src/**/*.{ts,tsx}'","test":"jest --passWithNoTests","build":"tsdown","test:watch":"jest --watch"},"_npmUser":{"name":"ifandelse","email":"jim@ifandelse.com"},"licenses":[{"url":"http://opensource.org/licenses/MIT","type":"MIT"},{"url":"http://opensource.org/licenses/GPL-2.0","type":"GPL"}],"_resolved":"/private/var/folders/87/d50pddj51hd9dl_947hfq1tc0000gn/T/2b6b091f4f592dd218c5f484e0d746bf/machina-6.2.0.tgz","_integrity":"sha512-fFMhStozZFsg9tNJ+Q3Bz0MrRf5j2XaShBDWiXDTmJqdB9Y8Clb+TGI/aJsMAnb07HUYQ7Zo072cOcvBSENRVw==","repository":{"url":"git://github.com/ifandelse/machina.js.git","type":"git"},"_npmVersion":"10.9.4","description":"Focused finite state machines for JavaScript and TypeScript. States in, states out.","directories":{},"sideEffects":false,"_nodeVersion":"22.22.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^30.2.0","eslint":"^9.39.2","tsdown":"^0.20.3","ts-jest":"^29.4.6","typescript":"^5.9.3"},"_npmOperationalInternal":{"tmp":"tmp/machina_6.2.0_1772315469827_0.6470706216031437","host":"s3://npm-registry-packages-npm-production"}},"6.3.0":{"name":"machina","version":"6.3.0","author":{"url":"http://ifandelse.com","name":"Jim Cowart"},"license":"MIT","_id":"machina@6.3.0","maintainers":[{"name":"ifandelse","email":"jim@ifandelse.com"},{"name":"rniemeyer","email":"rniemeyer@gmail.com"}],"homepage":"https://machina-js.org/","bugs":{"url":"http://github.com/ifandelse/machina.js/issues"},"dist":{"shasum":"de71d34301e5279c164325ebeeb0af1ee446ac97","tarball":"https://registry.npmjs.org/machina/-/machina-6.3.0.tgz","fileCount":11,"integrity":"sha512-Yukbm1At06LxJi5lK0QDu3jTg69XzDX7tkb/dwMFPiXIFFIyOcLMgX2NWq4qVclIva6xYLDWT3jZnNMDGqSDNw==","signatures":[{"sig":"MEUCIQDSzxbjAOOrcEGvu0wC2UmgIaFtMAU8Sgmxx+07m9Mf9QIgI/tnGdZqCqCT318ZoP+aTF88VPxw0Q1DiFGuEwhCINQ=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":284890},"main":"dist/index.cjs","_from":"file:machina-6.3.0.tgz","types":"dist/index.d.mts","module":"dist/index.mjs","engines":{"node":">=22.22"},"exports":{".":{"types":"./dist/index.d.mts","import":"./dist/index.mjs","require":"./dist/index.cjs"}},"scripts":{"dev":"tsdown --watch","lint":"eslint 'src/**/*.{ts,tsx}'","test":"jest --passWithNoTests","build":"tsdown","test:watch":"jest --watch"},"_npmUser":{"name":"ifandelse","email":"jim@ifandelse.com"},"licenses":[{"url":"http://opensource.org/licenses/MIT","type":"MIT"},{"url":"http://opensource.org/licenses/GPL-2.0","type":"GPL"}],"_resolved":"/private/var/folders/87/d50pddj51hd9dl_947hfq1tc0000gn/T/007b486a3f4089f889e0eb24afd6ad8c/machina-6.3.0.tgz","_integrity":"sha512-Yukbm1At06LxJi5lK0QDu3jTg69XzDX7tkb/dwMFPiXIFFIyOcLMgX2NWq4qVclIva6xYLDWT3jZnNMDGqSDNw==","repository":{"url":"git://github.com/ifandelse/machina.js.git","type":"git"},"_npmVersion":"10.9.4","description":"Focused finite state machines for JavaScript and TypeScript. States in, states out.","directories":{},"sideEffects":false,"_nodeVersion":"22.22.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^30.3.0","eslint":"^9.39.4","tsdown":"^0.20.3","ts-jest":"^29.4.6","typescript":"^5.9.3"},"_npmOperationalInternal":{"tmp":"tmp/machina_6.3.0_1775518598384_0.5612398149318283","host":"s3://npm-registry-packages-npm-production"}},"7.0.0":{"name":"machina","version":"7.0.0","author":{"url":"http://ifandelse.com","name":"Jim Cowart"},"license":"MIT","_id":"machina@7.0.0","maintainers":[{"name":"ifandelse","email":"jim@ifandelse.com"},{"name":"rniemeyer","email":"rniemeyer@gmail.com"}],"homepage":"https://machina-js.org/","bugs":{"url":"http://github.com/ifandelse/machina.js/issues"},"dist":{"shasum":"42725f68f9c75c41dbbfe2c28abceb09f66d1bf3","tarball":"https://registry.npmjs.org/machina/-/machina-7.0.0.tgz","fileCount":11,"integrity":"sha512-QZY8V9N7Opmc60JMGl+6UCg0rQW04Wb55U/0CpzTCzhmCLw4FnP1P/n/hv4HaTKts4kGRD7s46KLDvYy2rdxCw==","signatures":[{"sig":"MEUCIQC4bEUm8atOogAAHbHioh3GZqFMBMK2E30qH9lKtIOxOAIgODFhuOUBNf+d+8XG+6aamYCmwmPULWvnp1kY8L/Pv0k=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":471082},"main":"dist/index.cjs","_from":"file:machina-7.0.0.tgz","types":"dist/index.d.mts","module":"dist/index.mjs","engines":{"node":">=22.22"},"exports":{".":{"types":"./dist/index.d.mts","import":"./dist/index.mjs","require":"./dist/index.cjs"}},"scripts":{"dev":"tsdown --watch","lint":"eslint 'src/**/*.{ts,tsx}'","test":"jest --passWithNoTests","build":"tsdown","test:watch":"jest --watch"},"_npmUser":{"name":"ifandelse","email":"jim@ifandelse.com"},"licenses":[{"url":"http://opensource.org/licenses/MIT","type":"MIT"},{"url":"http://opensource.org/licenses/GPL-2.0","type":"GPL"}],"_resolved":"/private/var/folders/87/d50pddj51hd9dl_947hfq1tc0000gn/T/4b2f6f8119fb7276b4eb0e66307def48/machina-7.0.0.tgz","_integrity":"sha512-QZY8V9N7Opmc60JMGl+6UCg0rQW04Wb55U/0CpzTCzhmCLw4FnP1P/n/hv4HaTKts4kGRD7s46KLDvYy2rdxCw==","repository":{"url":"git://github.com/ifandelse/machina.js.git","type":"git"},"_npmVersion":"10.9.7","description":"Focused finite state machines for JavaScript and TypeScript. States in, states out.","directories":{},"sideEffects":false,"_nodeVersion":"22.22.2","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^30.3.0","eslint":"^9.39.4","tsdown":"^0.20.3","ts-jest":"^29.4.6","typescript":"^5.9.3"},"_npmOperationalInternal":{"tmp":"tmp/machina_7.0.0_1786483091347_0.15034796708011244","host":"s3://npm-registry-packages-npm-production"}},"7.0.1":{"name":"machina","version":"7.0.1","author":{"url":"http://ifandelse.com","name":"Jim Cowart"},"license":"MIT","_id":"machina@7.0.1","maintainers":[{"name":"ifandelse","email":"jim@ifandelse.com"},{"name":"rniemeyer","email":"rniemeyer@gmail.com"}],"homepage":"https://machina-js.org/","bugs":{"url":"http://github.com/ifandelse/machina.js/issues"},"dist":{"shasum":"859ad49203a5e194ed6bd1f6ef102c308bf6b839","tarball":"https://registry.npmjs.org/machina/-/machina-7.0.1.tgz","fileCount":11,"integrity":"sha512-0Xkgs8NeBvO2hW6bjJT8ewLWrMfh1haMPstaghpASWjXkLjRhtDiaJG1Kb7mslaOHxZYxpH7PIjpmirRVYbMMA==","signatures":[{"sig":"MEUCIG8ukdRbsGY85Zq2n44Q6XPce8/9wn8N5+YacUvuDX/7AiEA34HP4fo31ct+DpIEgPRqxzBwemx61z8KhwDN6gytsyI=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":472341},"main":"dist/index.cjs","_from":"file:machina-7.0.1.tgz","types":"dist/index.d.mts","module":"dist/index.mjs","engines":{"node":">=22.22"},"exports":{".":{"types":"./dist/index.d.mts","import":"./dist/index.mjs","require":"./dist/index.cjs"}},"scripts":{"dev":"tsdown --watch","lint":"eslint 'src/**/*.{ts,tsx}'","test":"jest --passWithNoTests","build":"tsdown","test:watch":"jest --watch"},"_npmUser":{"name":"ifandelse","email":"jim@ifandelse.com"},"licenses":[{"url":"http://opensource.org/licenses/MIT","type":"MIT"},{"url":"http://opensource.org/licenses/GPL-2.0","type":"GPL"}],"_resolved":"/private/var/folders/87/d50pddj51hd9dl_947hfq1tc0000gn/T/7725ba28dcf4723223b5277a50434c96/machina-7.0.1.tgz","_integrity":"sha512-0Xkgs8NeBvO2hW6bjJT8ewLWrMfh1haMPstaghpASWjXkLjRhtDiaJG1Kb7mslaOHxZYxpH7PIjpmirRVYbMMA==","repository":{"url":"git://github.com/ifandelse/machina.js.git","type":"git"},"_npmVersion":"10.9.7","description":"Focused finite state machines for JavaScript and TypeScript. States in, states out.","directories":{},"sideEffects":false,"_nodeVersion":"22.22.2","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^30.3.0","eslint":"^9.39.4","tsdown":"^0.20.3","ts-jest":"^29.4.6","typescript":"^5.9.3"},"_npmOperationalInternal":{"tmp":"tmp/machina_7.0.1_1786485545574_0.23914390195251634","host":"s3://npm-registry-packages-npm-production"}},"8.0.0":{"name":"machina","version":"8.0.0","author":{"url":"http://ifandelse.com","name":"Jim Cowart"},"license":"MIT","_id":"machina@8.0.0","maintainers":[{"name":"ifandelse","email":"jim@ifandelse.com"},{"name":"rniemeyer","email":"rniemeyer@gmail.com"}],"homepage":"https://machina-js.org/","bugs":{"url":"http://github.com/ifandelse/machina.js/issues"},"dist":{"shasum":"97e775f927b99f0f218bc04e9de1616b95080e1b","tarball":"https://registry.npmjs.org/machina/-/machina-8.0.0.tgz","fileCount":11,"integrity":"sha512-cxAYhYuCvvw/Q4rRBkalLu4BAFkDAVKcYKafPu+RVMdbbxtjOAdK28WPTUZFWLb+DVI0P8u+6oRV4WNUnZZOhw==","signatures":[{"sig":"MEQCIDWXkq3q7gpMoNcSIBmOGfsCy25154vEtefndgSAehA+AiAQpWH51nQBweuUu5BZUukGPXjfPbYJfjNwKQMWO1g13Q==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEUCIQDHlW/zEALauidCRX2u1kk17Y9qLiS4vUIhUL2v5qvlhAIgZP7hUEawuNfWt7bmFZYDEP6D26s7HmQVBdlnxyZJLtI=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":527141},"main":"dist/index.cjs","_from":"file:machina-8.0.0.tgz","types":"dist/index.d.mts","module":"dist/index.mjs","engines":{"node":">=22.22"},"exports":{".":{"types":"./dist/index.d.mts","import":"./dist/index.mjs","require":"./dist/index.cjs"}},"scripts":{"dev":"tsdown --watch","lint":"eslint 'src/**/*.{ts,tsx}'","test":"jest --passWithNoTests","build":"tsdown","test:watch":"jest --watch"},"_npmUser":{"name":"ifandelse","email":"jim@ifandelse.com"},"licenses":[{"url":"http://opensource.org/licenses/MIT","type":"MIT"},{"url":"http://opensource.org/licenses/GPL-2.0","type":"GPL"}],"_resolved":"/private/var/folders/87/d50pddj51hd9dl_947hfq1tc0000gn/T/a27565a24c3cada15fcdff4655bda60d/machina-8.0.0.tgz","_integrity":"sha512-cxAYhYuCvvw/Q4rRBkalLu4BAFkDAVKcYKafPu+RVMdbbxtjOAdK28WPTUZFWLb+DVI0P8u+6oRV4WNUnZZOhw==","repository":{"url":"git://github.com/ifandelse/machina.js.git","type":"git"},"_npmVersion":"10.9.7","description":"Focused finite state machines for JavaScript and TypeScript. States in, states out.","directories":{},"sideEffects":false,"_nodeVersion":"22.22.2","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^30.5.2","eslint":"^9.39.5","tsdown":"^0.20.3","ts-jest":"^29.4.14","typescript":"^5.9.3"},"_npmOperationalInternal":{"tmp":"tmp/machina_8.0.0_1792355136005_0.6217880898333408","host":"s3://npm-registry-packages-npm-production"}},"8.1.0":{"name":"machina","version":"8.1.0","author":{"url":"http://ifandelse.com","name":"Jim Cowart"},"license":"MIT","_id":"machina@8.1.0","maintainers":[{"name":"ifandelse","email":"jim@ifandelse.com"},{"name":"rniemeyer","email":"rniemeyer@gmail.com"}],"homepage":"https://machina-js.org/","bugs":{"url":"http://github.com/ifandelse/machina.js/issues"},"dist":{"shasum":"a731405d6c96db19301223a246b131d76109aa90","tarball":"https://registry.npmjs.org/machina/-/machina-8.1.0.tgz","fileCount":11,"integrity":"sha512-LKW7O1ajW8HiYVyrWSmDBCM5NYqyjvrAwJP6qMT0SkQVgWrgjbfgaINa6AMvaqH13CiSiWw6GetR+aWTt5XGAg==","signatures":[{"sig":"MEQCIFe2Rk5bKH+lunmhdjAYO+v0QmbW7MhtM+OiLFGMa6iBAiAalMMDhqOfdTfVjNypR6SgsBit+4LSHZWpsbtrHG484g==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEYCIQDmtuN4Zrt6iIUF9+sZ37JbrPVbZPlZFIMTxAtbP6Fb0gIhAJ8AoOP+Xd9LKtbFQtYKUL/JWNnPMML3ggK3VcvYH/R8","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":558457},"main":"dist/index.cjs","_from":"file:machina-8.1.0.tgz","types":"dist/index.d.mts","module":"dist/index.mjs","engines":{"node":">=22.22"},"exports":{".":{"types":"./dist/index.d.mts","import":"./dist/index.mjs","require":"./dist/index.cjs"}},"scripts":{"dev":"tsdown --watch","lint":"eslint 'src/**/*.{ts,tsx}'","test":"jest --passWithNoTests","build":"tsdown","test:watch":"jest --watch"},"_npmUser":{"name":"ifandelse","email":"jim@ifandelse.com"},"licenses":[{"url":"http://opensource.org/licenses/MIT","type":"MIT"},{"url":"http://opensource.org/licenses/GPL-2.0","type":"GPL"}],"_resolved":"/private/var/folders/87/d50pddj51hd9dl_947hfq1tc0000gn/T/3bc8f998d3e9f3cc8f08467272dcf087/machina-8.1.0.tgz","_integrity":"sha512-LKW7O1ajW8HiYVyrWSmDBCM5NYqyjvrAwJP6qMT0SkQVgWrgjbfgaINa6AMvaqH13CiSiWw6GetR+aWTt5XGAg==","repository":{"url":"git://github.com/ifandelse/machina.js.git","type":"git"},"_npmVersion":"10.9.7","description":"Focused finite state machines for JavaScript and TypeScript. States in, states out.","directories":{},"sideEffects":false,"_nodeVersion":"22.22.2","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^30.5.2","eslint":"^9.39.5","tsdown":"^0.20.3","ts-jest":"^29.4.15","typescript":"^5.9.3"},"_npmOperationalInternal":{"tmp":"tmp/machina_8.1.0_1792536189053_0.7125767673076298","host":"s3://npm-registry-packages-npm-production"}},"8.2.0":{"_id":"machina@8.2.0","bugs":{"url":"http://github.com/ifandelse/machina.js/issues"},"dist":{"shasum":"d163fa520e42b3c719e8a54a90957415aa04fa1e","tarball":"https://registry.npmjs.org/machina/-/machina-8.2.0.tgz","fileCount":11,"integrity":"sha512-ybKyl7mWiFbN1uKH9xTWEANDz2z+Bny6kxctqmMI1R8LlReuN5yhhaPiSFyYoEW1+Doqep7ZCzUfFxk0SGrjaw==","signatures":[{"sig":"MEQCIEzATEgJ/ABdQC7XAv6UV8DBKlMqdUSmaBkIkUDGKLZAAiA58OoZ69sk1V+9YXqukrIFOu+8oarNRVTqmmRobjPx+w==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEQCIDkKcdg3QahJFBXx9C/DDgw+CXvGYHj957NG37sAkn75AiALWzyG9pJpmRx4RBngcpjTjrWJIVHANFGPdQGP7YBhbg=="}],"unpackedSize":625061},"main":"dist/index.cjs","name":"machina","_from":"file:machina-8.2.0.tgz","types":"dist/index.d.mts","author":{"url":"http://ifandelse.com","name":"Jim Cowart"},"module":"dist/index.mjs","engines":{"node":">=22.22"},"exports":{".":{"types":"./dist/index.d.mts","import":"./dist/index.mjs","require":"./dist/index.cjs"}},"license":"MIT","scripts":{"dev":"tsdown --watch","lint":"eslint 'src/**/*.{ts,tsx}'","test":"jest --passWithNoTests","build":"tsdown","test:watch":"jest --watch"},"version":"8.2.0","_npmUser":{"name":"ifandelse","email":"jim@ifandelse.com"},"homepage":"https://machina-js.org/","licenses":[{"url":"http://opensource.org/licenses/MIT","type":"MIT"},{"url":"http://opensource.org/licenses/GPL-2.0","type":"GPL"}],"_resolved":"/private/var/folders/87/d50pddj51hd9dl_947hfq1tc0000gn/T/d3aaa6a540d40476be55323ff998bb51/machina-8.2.0.tgz","_integrity":"sha512-ybKyl7mWiFbN1uKH9xTWEANDz2z+Bny6kxctqmMI1R8LlReuN5yhhaPiSFyYoEW1+Doqep7ZCzUfFxk0SGrjaw==","repository":{"url":"git://github.com/ifandelse/machina.js.git","type":"git"},"_npmVersion":"10.9.7","description":"Focused finite state machines for JavaScript and TypeScript. States in, states out.","directories":{},"maintainers":[{"name":"ifandelse","email":"jim@ifandelse.com"},{"name":"rniemeyer","email":"rniemeyer@gmail.com"}],"sideEffects":false,"_nodeVersion":"22.22.2","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^30.5.2","eslint":"^9.39.5","tsdown":"^0.20.3","ts-jest":"^29.4.15","typescript":"^5.9.3"},"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/machina_8.2.0_1793070138112_0.42614165685583005"}}},"time":{"created":"2012-04-25T04:06:15.792Z","modified":"2026-10-27T03:02:18.796Z","0.2.0":"2012-04-25T04:06:16.247Z","0.2.1":"2012-09-25T04:22:03.776Z","0.2.2":"2012-10-08T01:06:10.710Z","0.3.0":"2012-11-11T06:25:54.680Z","0.3.1":"2012-11-14T04:12:20.957Z","0.3.2":"2013-02-08T06:04:02.617Z","0.3.3":"2013-03-03T18:42:43.694Z","0.3.4":"2013-04-16T21:48:58.381Z","0.3.5":"2014-01-31T04:51:30.574Z","0.3.6":"2014-03-04T00:49:02.496Z","0.3.7":"2014-07-18T05:20:03.098Z","0.3.8":"2014-07-25T15:07:42.363Z","0.4.0-1":"2014-07-28T21:38:06.963Z","0.4.0-2":"2014-12-08T14:26:57.082Z","0.4.0":"2014-12-26T18:43:17.750Z","0.4.1":"2015-01-14T06:13:59.224Z","0.4.2":"2015-01-20T00:05:51.908Z","0.4.3":"2015-01-20T04:20:23.905Z","1.0.0-1":"2015-02-02T04:31:19.566Z","1.0.0-2":"2015-03-06T19:46:08.184Z","1.0.0":"2015-03-24T18:26:03.297Z","1.0.1":"2015-05-24T15:18:12.092Z","1.1.0":"2015-06-01T03:00:59.731Z","1.1.1":"2015-06-20T00:04:36.408Z","1.1.2":"2015-06-21T18:13:39.764Z","2.0.0-1":"2016-03-13T03:19:43.387Z","2.0.0":"2016-06-25T18:03:12.603Z","2.0.1":"2018-02-06T23:04:08.434Z","2.0.2":"2018-02-16T03:10:08.409Z","4.0.0":"2018-10-25T20:37:07.978Z","4.0.1":"2018-10-25T20:48:34.454Z","4.0.2":"2018-10-27T01:32:21.834Z","6.0.0":"2026-02-23T01:46:18.785Z","6.1.0":"2026-02-27T16:59:08.714Z","6.2.0":"2026-02-28T21:51:09.967Z","6.3.0":"2026-04-06T23:36:38.548Z","7.0.0":"2026-08-11T21:18:11.506Z","7.0.1":"2026-08-11T21:59:05.750Z","8.0.0":"2026-10-18T20:25:36.096Z","8.1.0":"2026-10-20T22:43:09.176Z","8.2.0":"2026-10-27T03:02:18.209Z"},"bugs":{"url":"http://github.com/ifandelse/machina.js/issues"},"author":{"url":"http://ifandelse.com","name":"Jim Cowart"},"license":"MIT","homepage":"https://machina-js.org/","repository":{"url":"git://github.com/ifandelse/machina.js.git","type":"git"},"description":"Focused finite state machines for JavaScript and TypeScript. States in, states out.","maintainers":[{"name":"ifandelse","email":"jim@ifandelse.com"},{"name":"rniemeyer","email":"rniemeyer@gmail.com"}],"readme":"# machina\n\n<!-- sync:intro -->\n\nmachina is a small library for building finite state machines in JavaScript and TypeScript. States in, states out.\n\n[Documentation](https://machina-js.org) · [npm](https://www.npmjs.com/package/machina) · [GitHub](https://github.com/ifandelse/machina.js)\n\n<!-- /sync:intro -->\n\n<!-- sync:case -->\n\n## The Case for State Machines\n\nOf all the roads that lead to state bugs, the broadest ones are paved with well-intended booleans. You start with `isConnecting`, then add `hasFailed`, then `retryCount` and `hasExceededRetryCount`, and soon every callback checks some combination of these. Each new flag doubles the possible combinations (or worse). Some combinations are nonsense, like a connection that is both connecting and connected. The trickiest part of this is that the bugs tend to appear in the combinations no one ever considered, and it's much easier to spot the nonsense combinations explicitly represented in code than the actually-relevant ones that aren't.\n\nA finite state machine (FSM) replaces these flags with one named state at a time. The same input can mean different things in each state, including nothing at all. Impossible combinations become unrepresentable. Behavior is grouped by state instead of scattered across callbacks, or wildly branching code, and the FSM's config itself documents how the machine behaves.\n\nYou already think this way. You describe connection status or the stages of an order in states. A state machine makes the code match that description. The pattern predates JavaScript by decades and it appears everywhere, from network protocols, parsers, to game AI.\n\nIf a plain boolean covers your case, use the boolean. However, if you need to tame a herd of booleans, or if changing the aggregate state of those flags needs to follow rules, or when what happens next depends on what is happening now, then you need an FSM. [The Case for State Machines](https://machina-js.org/guide/why-state-machines/) on the docs site makes the longer argument, with a before-and-after refactor.\n\n<!-- /sync:case -->\n\n<!-- sync:show-me -->\n\n## Show Me (the Money)\n\nYou use a physical state machine every day: a door lock. It can be in a `locked` or `unlocked` state. Your \"input\" (trying to open the door) has a different outcome based on the state the door lock is in.\n\nHere's an FSM that represents a fancier, key code lock. It opens with the right code and sounds an alarm after three wrong attempts:\n\n```ts\nimport { createFsm } from \"machina\";\n\nconst lock = createFsm({\n    id: \"door-lock\",\n    initialState: \"locked\",\n    context: { attempts: 0 },\n    states: {\n        locked: {\n            submit({ ctx }, code: unknown) {\n                if (code === \"1234\") {\n                    ctx.attempts = 0;\n                    return \"unlocked\";\n                }\n                ctx.attempts++;\n                if (ctx.attempts >= 3) {\n                    return \"alarming\";\n                }\n            },\n        },\n        unlocked: {\n            lock: \"locked\",\n        },\n        alarming: {\n            reset({ ctx }) {\n                ctx.attempts = 0;\n                return \"locked\";\n            },\n        },\n    },\n});\n\nlock.handle(\"submit\", \"wrong\"); // stays in \"locked\"\nlock.handle(\"submit\", \"1234\"); // transitions to \"unlocked\"\nlock.handle(\"lock\"); // back to \"locked\"\n\nconsole.log(lock.currentState()); // \"locked\"\n```\n\nThis FSM's states are the top-level properties under `states`: `locked`, `unlocked`, and `alarming`.\n\nThe handlers (which are the methods attached to the state properties) return a state name to transition to a new state, or return nothing to remain in the current state. String shorthand (`lock: \"locked\"`) is for handlers that always transition to the same state. The `submit` handler shows the other case, a transition that depends on context.\n\nThe [examples directory](https://github.com/ifandelse/machina.js/tree/master/examples) has fuller examples of FSMs:\n\n- [connectivity](https://github.com/ifandelse/machina.js/tree/master/examples/connectivity) for a realistic `createFsm`\n- [traffic-intersection](https://github.com/ifandelse/machina.js/tree/master/examples/traffic-intersection) for hierarchy\n- [dungeon-critters](https://github.com/ifandelse/machina.js/tree/master/examples/dungeon-critters) for one FSM managing many clients.\n\n### Installation\n\n```sh\nnpm install machina\n# or\npnpm add machina\n```\n\nThe package includes CJS and ESM builds and TypeScript type definitions.\n\n### The Mental Model\n\n- States are keys in the config, and inputs are keys inside each state. Handlers return the next state, or nothing.\n- Handlers receive `{ ctx, inputName, defer, emit }` as a plain argument. There is no `this` binding, so arrow functions work everywhere.\n- `ctx` is your data (the internal state you want to keep track of inside the FSM). For `createFsm` it is the FSM's own `context` object, and for `createBehavioralFsm` it is the client (more on this later).\n- Every method is synchronous. Start async work in `_onEnter`, then call `handle()` or `transition()` when the work completes.\n- Read the config from top to bottom and you know the complete behavior of the machine.\n\n### One, or Many\n\nThe note above about the `ctx` argument mentioned the two FSM factories in machina:\n\n`createFsm` builds one machine with its own `context` object. Use it for one instance of a thing, like the lock above.\n\n`createBehavioralFsm` defines the _behavior_ once and applies it to any number of client objects. machina tracks each client's state in a `WeakMap` and doesn't write properties onto your objects. This can be incredibly useful, freeing you from having to manage n-number of FSM instances, and instead, just let your plain application objects use an FSM's behavior as if they were the only one using it.\n\n```ts\nimport { createBehavioralFsm } from \"machina\";\n\ninterface Connection {\n    url: string;\n    retries: number;\n}\n\nconst connFsm = createBehavioralFsm<Connection>()({\n    id: \"connectivity\",\n    initialState: \"disconnected\",\n    states: {\n        disconnected: { connect: \"connecting\" },\n        connecting: {\n            connected: \"online\",\n            failed({ ctx }) {\n                ctx.retries++;\n                return \"disconnected\";\n            },\n        },\n        online: { disconnect: \"disconnected\" },\n    },\n});\n\nconst connA = { url: \"wss://a.example.com\", retries: 0 };\nconst connB = { url: \"wss://b.example.com\", retries: 0 };\n\nconnFsm.handle(connA, \"connect\"); // connA: \"connecting\"\nconnFsm.handle(connB, \"connect\"); // connB: \"connecting\"\nconnFsm.handle(connA, \"connected\"); // connA: \"online\"\nconnFsm.handle(connB, \"failed\"); // connB: \"disconnected\", retries: 1\n```\n\n**IMPORTANT**: The extra `()` in `createBehavioralFsm<Connection>()` fixes the client type before TypeScript infers the rest from the config. Methods that act on one client (`handle`, `canHandle`, `transition`, `reset`, `currentState`, `compositeState`, `dehydrate`, `rehydrate`) take that client as their first argument, and handlers receive the client as `ctx`, so put per-client data on the client. The instance-wide methods (`on`, `emit`, `dispose`) don't take a client. The config-level `onDispose` hook runs once per client when you call `dispose()`, with that client as `ctx`.\n\n### Features in the Order You'll Probably Need Them\n\n- When one machine grows too large, nest another machine inside a state with [`_child`](https://machina-js.org/guide/hierarchical/). The child receives each input first, and unhandled inputs bubble up to the parent.\n- When the machine receives an input it cannot act on yet, [`defer()`](https://machina-js.org/guide/defer/) queues that input for replay after the next transition.\n- When the rest of your app needs to react to the machine, subscribe to [lifecycle events](https://machina-js.org/guide/events/) such as `transitioned` and `nohandler`.\n- When you want the compiler to check every `handle()` call, declare [typed input payloads](https://machina-js.org/guide/typed-payloads/). Misspelled inputs and wrong payloads then become compile errors.\n\n### Your FSM is a Data Structure\n\nAn FSM config is plain data, so tools can analyze it without executing it.\n\n- [machina-inspect](https://www.npmjs.com/package/machina-inspect) parses a config into a graph and reports unreachable states, `_onEnter` loops, and missing handlers.\n- [machina-test](https://www.npmjs.com/package/machina-test) adds Jest and Vitest matchers, so your test suite can assert reachability and structure.\n- [eslint-plugin-machina](https://www.npmjs.com/package/eslint-plugin-machina) reports the same findings inline in your editor.\n\n<!-- /sync:show-me -->\n\n<!-- sync:xstate -->\n\n## machina vs XState\n\nI'm frequently asked about the differences between machina and XState.\n\nmachina was inspired by Erlang/OTP's gen_fsm module, and follows the same priorities: a small API, pragmatic, focused, minimal ceremony, and straightforward to reason about. [XState](https://xstate.js.org/) is a full statechart framework with actors, spawning, inspection tooling, and SCXML compatibility. It's a phenomenal library. If you need those features, use it. machina is for when you want a state machine (or a hierarchy of them) and nothing else.\n\n<!-- /sync:xstate -->\n\n## API Reference\n\nThe [typedoc reference](https://machina-js.org/api/) documents the full public surface. The tables below cover the parts you use most often.\n\n### `Fsm` methods\n\n| Method                       | Description                                                                                                                                                                                     |\n| ---------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |\n| `handle(inputName, ...args)` | Dispatches an input to the current state's handler. Payload args are untyped unless the FSM declares an [input payload map](https://machina-js.org/guide/typed-payloads/)                       |\n| `canHandle(inputName)`       | Returns true when the current state or its `_child` chain handles the input                                                                                                                     |\n| `transition(toState)`        | Transitions without an input. `_onExit` and `_onEnter` run, and the transition events fire                                                                                                      |\n| `reset()`                    | Transitions back to `initialState`                                                                                                                                                              |\n| `currentState()`             | Returns the current state name                                                                                                                                                                  |\n| `compositeState()`           | Returns the dot-delimited state path, including active child FSM states                                                                                                                         |\n| `on(eventName, callback)`    | Subscribes to an event and returns a `Subscription` with an `off()` method                                                                                                                      |\n| `emit(eventName, data?)`     | Emits a custom event                                                                                                                                                                            |\n| `dispose(options?)`          | Shuts the FSM down permanently. Runs the config's `onDispose` hook first, then disposes child FSMs unless you pass `{ preserveChildren: true }`. After disposal, method calls are silent no-ops |\n\n### `BehavioralFsm` differences\n\nThe client-scoped methods (`handle`, `canHandle`, `transition`, `reset`, `currentState`, `compositeState`, `dehydrate`, `rehydrate`) take the client object as their first argument, and built-in event payloads include a `client` field. A custom event keeps whatever payload you pass to `emit()`, with nothing attached. The instance-wide methods (`on`, `emit`, `dispose`) don't take a client. The config-level `onDispose` hook runs once per client when you call `dispose()`, with that client as `ctx`.\n\nFor persistence, `dehydrate(client)` returns a `ClientSnapshot`, or `undefined` for a client the FSM hasn't handled yet. `rehydrate(client, snapshotOrPath)` places the client at a stored position while skipping the lifecycle hooks and events. The snapshot form restores the client's deferred inputs too. A bare `compositeState()` string restores only the state path. The [persisting clients guide](https://machina-js.org/guide/persisting-clients/) covers the full persist-and-restore pattern.\n\n### Events\n\nSubscribe with `on()`. A `\"*\"` subscription receives each event, with the event name as its first argument.\n\n| Event           | Payload                  | Fires when                                 |\n| --------------- | ------------------------ | ------------------------------------------ |\n| `transitioning` | `{ fromState, toState }` | A transition is about to run               |\n| `transitioned`  | `{ fromState, toState }` | A transition completed                     |\n| `handling`      | `{ inputName }`          | An input is about to be dispatched         |\n| `handled`       | `{ inputName }`          | An input was handled                       |\n| `nohandler`     | `{ inputName, args }`    | The current state doesn't handle the input |\n| `invalidstate`  | `{ stateName }`          | A transition targeted an undeclared state  |\n| `deferred`      | `{ inputName }`          | An input was deferred                      |\n\n### TypeScript exports\n\nState names, input names, transition targets, and handler signatures are inferred from the config. The exported types below support signatures you write outside a config:\n\n```ts\nimport type {\n    FsmConfig,\n    FsmEventMap,\n    BehavioralFsmEventMap,\n    HandlerArgs,\n    HandlerFn,\n    InputMapFromUnion,\n    InputMapOfInstance,\n    StateNamesOf,\n    InputNamesOf,\n    Subscription,\n    DisposeOptions,\n} from \"machina\";\n```\n\n## Contracts and Gotchas\n\nThe rules below are specific to machina. A reader working from generic state-machine knowledge will miss them.\n\n- `_child` delegation is descendant-first: the deepest handler wins, and unhandled inputs bubble up to ancestors.\n- A config that mounts a child must handle the child's declared `bubbles`, redeclare them, or include a `\"*\"` handler. Otherwise the config fails to compile.\n- An input payload map is the complete list of the machine's inputs. Undeclared handler keys and wrong payloads are compile errors, and so are undeclared `bubbles` entries.\n- `dehydrate()` plus the snapshot form of `rehydrate()` preserves a client's deferred inputs. A bare `compositeState()` string restores only the state path.\n- Per-client state, such as timers or counters, belongs on the BehavioralFsm client (`ctx`). Storing it on the shared FSM instance is a bug for every client at once.\n\n<!-- sync:versions -->\n\n## Versions and Migrating\n\nmachina v8 is the current major version. v6 redesigned the API around plain config objects and handlers that receive `{ ctx }` instead of `this`. v7 extended hierarchical delegation to any depth and turned config typos into compile errors. v8 added [typed input payloads](https://machina-js.org/guide/typed-payloads/), and the [v7 to v8 guide](https://machina-js.org/migration/v7-to-v8/) covers its one type-level break. Readers on v5 or earlier should read the [v5 to v6 guide](https://machina-js.org/migration/v5-to-v6/) and then the [v6 to v7 guide](https://machina-js.org/migration/v6-to-v7/) first.\n\n<!-- /sync:versions -->\n\n## License\n\nmachina is MIT licensed and also available under GPL-2.0 (see [LICENSE](https://github.com/ifandelse/machina.js/blob/master/LICENSE)).\n\n&copy; Jim Cowart\n","readmeFilename":"README.md","users":{"brend":true,"cybo42":true,"nuwaio":true,"asaupup":true,"preco21":true,"mast4461":true,"timjones":true,"vkarpov15":true,"shiningray":true,"shangsinian":true,"zer0latency":true}}