+ client: handle DNS rewrites

This commit is contained in:
Ildar Kamalov
2019-07-22 15:32:12 +03:00
parent 70b8cf6ec8
commit e95aae5744
20 changed files with 631 additions and 70 deletions

View File

@@ -0,0 +1,50 @@
import { handleActions } from 'redux-actions';
import * as actions from '../actions/rewrites';
const rewrites = handleActions(
{
[actions.getRewritesListRequest]: state => ({ ...state, processing: true }),
[actions.getRewritesListFailure]: state => ({ ...state, processing: false }),
[actions.getRewritesListSuccess]: (state, { payload }) => {
const newState = {
...state,
list: payload,
processing: false,
};
return newState;
},
[actions.addRewriteRequest]: state => ({ ...state, processingAdd: true }),
[actions.addRewriteFailure]: state => ({ ...state, processingAdd: false }),
[actions.addRewriteSuccess]: (state, { payload }) => {
const newState = {
...state,
list: [...state.list, ...payload],
processingAdd: false,
};
return newState;
},
[actions.deleteRewriteRequest]: state => ({ ...state, processingDelete: true }),
[actions.deleteRewriteFailure]: state => ({ ...state, processingDelete: false }),
[actions.deleteRewriteSuccess]: state => ({ ...state, processingDelete: false }),
[actions.toggleRewritesModal]: (state) => {
const newState = {
...state,
isModalOpen: !state.isModalOpen,
};
return newState;
},
},
{
processing: true,
processingAdd: false,
processingDelete: false,
isModalOpen: false,
list: [],
},
);
export default rewrites;