auth0-extensions/auth0-delegated-administration-extension

View on GitHub
client/reducers/languageDictionary.js

Summary

Maintainability
A
0 mins
Test Coverage
import { fromJS } from 'immutable';
import * as constants from '../constants';
import createReducer from '../utils/createReducer';

const initialState = {
  loading: false,
  error: null,
  record: { }
};

export const languageDictionary = createReducer(fromJS(initialState), { // eslint-disable-line
// import/prefer-default-export
  [constants.FETCH_LANGUAGE_DICTIONARY_PENDING]: (state) =>
    state.merge({
      ...initialState,
      loading: true,
      error: null
    }),
  [constants.FETCH_LANGUAGE_DICTIONARY_REJECTED]: (state, action) =>
    state.merge({
      loading: false,
      error: action.errorData
    }),
  [constants.FETCH_LANGUAGE_DICTIONARY_FULFILLED]: (state, action) => {
    const data = action.payload.data;
    return state.merge({
      loading: false,
      error: null,
      record: fromJS(data)
    });
  }

});