mirror of
https://github.com/wassname/talk.git
synced 2026-07-31 12:50:48 +08:00
30 lines
725 B
JavaScript
30 lines
725 B
JavaScript
import {Map} from 'immutable';
|
|
import * as actions from '../constants/config';
|
|
|
|
const initialState = Map({
|
|
features: Map({}),
|
|
status: 'open',
|
|
moderation: null
|
|
});
|
|
|
|
export default (state = initialState, action) => {
|
|
switch(action.type) {
|
|
case actions.UPDATE_CONFIG:
|
|
return state
|
|
.merge(Map(action.config));
|
|
case actions.UPDATE_CONFIG_SUCCESS:
|
|
return state
|
|
.merge(Map(action.config));
|
|
case actions.OPEN_COMMENTS:
|
|
return state
|
|
.set('status', 'open');
|
|
case actions.CLOSE_COMMENTS:
|
|
return state
|
|
.set('status', 'closed');
|
|
case actions.ADD_ITEM:
|
|
return action.item_type === 'assets' ? state.set('status', action.item.status) : state;
|
|
default:
|
|
return state;
|
|
}
|
|
};
|