UNPKG

gambit

Version:

A hyper-thin library to help building API driven redux apps

90 lines (70 loc) 3.98 kB
'use strict'; Object.defineProperty(exports, "__esModule", { value: true }); var _extends2 = require('babel-runtime/helpers/extends'); var _extends3 = _interopRequireDefault(_extends2); var _objectWithoutProperties2 = require('babel-runtime/helpers/objectWithoutProperties'); var _objectWithoutProperties3 = _interopRequireDefault(_objectWithoutProperties2); var _defineProperty2 = require('babel-runtime/helpers/defineProperty'); var _defineProperty3 = _interopRequireDefault(_defineProperty2); var _createReducer = require('./createReducer'); var _createReducer2 = _interopRequireDefault(_createReducer); var _immutable = require('immutable'); var _GeneralConstants = require('./GeneralConstants'); var _GeneralConstants2 = _interopRequireDefault(_GeneralConstants); function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } exports.default = function () { var _ref11, _ref14, _ref17; var opts = arguments.length <= 0 || arguments[0] === undefined ? {} : arguments[0]; return (0, _createReducer2.default)({ lastAction: [null, (0, _defineProperty3.default)({}, _GeneralConstants2.default.ACTION_SUCCEEDED, function (_ref) { var action = _ref.action; return action; })], lastCalled: [new _immutable.Map({}), (0, _defineProperty3.default)({}, _GeneralConstants2.default.ACTION_CALLED, function (_ref3, prevState) { var action = _ref3.action; return prevState.set(action, Date.now()); })], lastSucceeded: [new _immutable.Map({}), (0, _defineProperty3.default)({}, _GeneralConstants2.default.ACTION_SUCCEEDED, function (_ref5, prevState) { var action = _ref5.action; return prevState.set(action, Date.now()); })], monitorValues: [new _immutable.Map({}), (0, _defineProperty3.default)({}, _GeneralConstants2.default.MONITORED_VALUE_CHANGED, function (_ref7, prevState) { var id = _ref7.id; var props = _ref7.props; var state = _ref7.state; return prevState.set(id, (0, _immutable.fromJS)({ props: props, state: state })); })], pending: [new _immutable.Map({}), (_ref11 = {}, (0, _defineProperty3.default)(_ref11, _GeneralConstants2.default.ACTION_CALLED, function (_ref9, prevState) { var cycleId = _ref9.cycleId; if (!cycleId) return prevState; return prevState.set(cycleId, true); }), (0, _defineProperty3.default)(_ref11, _GeneralConstants2.default.ACTION_SUCCEEDED + ' ' + _GeneralConstants2.default.ACTION_FAILED, function (_ref10, prevState) { var cycleId = _ref10.cycleId; if (!cycleId) return prevState; return prevState.set(cycleId, false); }), _ref11)], failed: [new _immutable.Map({}), (_ref14 = {}, (0, _defineProperty3.default)(_ref14, _GeneralConstants2.default.ACTION_CALLED + ' ' + _GeneralConstants2.default.ACTION_SUCCEEDED, function (_ref12, prevState) { var cycleId = _ref12.cycleId; if (!cycleId) return prevState; return prevState.set(cycleId, null); }), (0, _defineProperty3.default)(_ref14, _GeneralConstants2.default.ACTION_FAILED, function (_ref13, prevState) { var cycleId = _ref13.cycleId; var rest = (0, _objectWithoutProperties3.default)(_ref13, ['cycleId']); if (!cycleId) return prevState; return prevState.set(cycleId, opts.errorParser ? opts.errorParser((0, _extends3.default)({ cycleId: cycleId }, rest)) : true); }), _ref14)], highlightedComponents: [new _immutable.Map({}), (_ref17 = {}, (0, _defineProperty3.default)(_ref17, _GeneralConstants2.default.HIGHLIGHT_COMPONENT, function (_ref15, state) { var id = _ref15.id; var color = _ref15.color; return state.set(id, color); }), (0, _defineProperty3.default)(_ref17, _GeneralConstants2.default.UNHIGHLIGHT_COMPONENT, function (_ref16, state) { var id = _ref16.id; return state.delete(id); }), _ref17)] }, (0, _extends3.default)({}, opts, { hearGeneral: true })); };