follow as redux
This commit is contained in:
parent
6f857e2c81
commit
0a7ae631cd
8 changed files with 297 additions and 208 deletions
31
src/reducers/follow.js
Normal file
31
src/reducers/follow.js
Normal file
|
@ -0,0 +1,31 @@
|
|||
import actions from '../actions';
|
||||
|
||||
const defaultState = {
|
||||
enabled: false,
|
||||
newTab: false,
|
||||
keys: [],
|
||||
};
|
||||
|
||||
export default function reducer(state = defaultState, action = {}) {
|
||||
switch (action.type) {
|
||||
case actions.FOLLOW_ENABLE:
|
||||
return Object.assign({}, state, {
|
||||
enabled: true,
|
||||
newTab: action.newTab,
|
||||
});
|
||||
case actions.FOLLOW_DISABLE:
|
||||
return Object.assign({}, state, {
|
||||
enabled: false,
|
||||
});
|
||||
case actions.FOLLOW_KEY_PRESS:
|
||||
return Object.assign({}, state, {
|
||||
keys: state.keys.concat([action.key]),
|
||||
});
|
||||
case actions.FOLLOW_BACKSPACE:
|
||||
return Object.assign({}, state, {
|
||||
keys: state.keys.slice(0, -1),
|
||||
});
|
||||
default:
|
||||
return state;
|
||||
}
|
||||
}
|
Reference in a new issue