import { assign } from 'lodash' import { reducerWithInitialState } from 'typescript-fsa-reducers' import * as actions from './actions' import { AuthenticateSuccessPayload } from './interfaces' export default reducerWithInitialState({}) .case(actions.authenticateSuccess, (state, payload: AuthenticateSuccessPayload) => { const { clusterName, userIpAddress, userId, sessionToken, } = payload return assign({}, state, { [clusterName]: { userIpAddress, userId, sessionToken, }, }) })