Why Gemfury? Push, build, and install  RubyGems npm packages Python packages Maven artifacts PHP packages Go Modules Debian packages RPM packages NuGet packages

Repository URL to install this package:

Details    
@doodle/i18n / dist / cjs / src / state / reducer / index.js
Size: Mime:
'use strict';

var index$1 = require('../actions/index.js');
var _rollupPluginBabelHelpers = require('../../../_virtual/_rollupPluginBabelHelpers.js');

var reducer = function reducer() {
  var state = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
  var action = arguments.length > 1 ? arguments[1] : undefined;

  switch (action.type) {
    case index$1.ActionTypes.CHANGE_LOCALE:
      return _rollupPluginBabelHelpers.objectSpread2(_rollupPluginBabelHelpers.objectSpread2({}, state), {}, {
        locale: action.payload.locale
      });

    case index$1.ActionTypes.FETCH_MESSAGES:
      return _rollupPluginBabelHelpers.objectSpread2(_rollupPluginBabelHelpers.objectSpread2({}, state), {}, {
        loading: true,
        error: null
      });

    case index$1.ActionTypes.FETCH_MESSAGES_SUCCESS:
      {
        var messages = _rollupPluginBabelHelpers.objectSpread2(_rollupPluginBabelHelpers.objectSpread2({}, state.messages), {}, _rollupPluginBabelHelpers.defineProperty({}, action.payload.locale, action.payload.messages));

        return _rollupPluginBabelHelpers.objectSpread2(_rollupPluginBabelHelpers.objectSpread2({}, state), {}, {
          loading: false,
          error: null,
          messages: messages
        });
      }

    case index$1.ActionTypes.FETCH_MESSAGES_ERROR:
      {
        return _rollupPluginBabelHelpers.objectSpread2(_rollupPluginBabelHelpers.objectSpread2({}, state), {}, {
          loading: false,
          error: action.payload.error
        });
      }

    default:
      return state;
  }
};
/**
 * Creates a reducer that can be used with [`combineReducer`](http://redux.js.org/docs/api/combineReducers.html)
 */


var index = (function () {
  var options = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
  return _rollupPluginBabelHelpers.defineProperty({}, options.domain || 'i18n', reducer);
});

module.exports = index;
//# sourceMappingURL=index.js.map