UNPKG

storry

Version:

State Management made simple

43 lines (39 loc) 1.13 kB
(function (global, factory) { if (typeof define === "function" && define.amd) { define(["module", "exports"], factory); } else if (typeof exports !== "undefined") { factory(module, exports); } else { var mod = { exports: {} }; factory(mod, mod.exports); global.storry = mod.exports; } })(this, function (module, exports) { "use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.default = function () { var _state = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {}; var listeners = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : []; return { state: function state() { return _state; }, action: function action(transform) { return function (event) { _state = transform(_state, event); listeners.forEach(function (listener) { return listener(_state); }); }; }, listen: function listen(callback) { return listeners.push(callback); } }; }; module.exports = exports["default"]; });