You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
45 lines
1.2 KiB
45 lines
1.2 KiB
'use strict';
|
|
import Immutable from 'immutable';
|
|
import { INIT_LAYOUT, RESIZE, INIT_API_ROOT,PEPPROJECTID } from '../actions/global';
|
|
|
|
function global (state = {
|
|
title: '',
|
|
copyright: '',
|
|
sections: [],
|
|
actions: {},
|
|
plugins: {},
|
|
clientHeight: 768,
|
|
clientWidth: 1024,
|
|
apiRoot: '',
|
|
iotVcmpWeb: '',
|
|
}, action) {
|
|
const payload = action.payload;
|
|
switch (action.type) {
|
|
case RESIZE:
|
|
return Immutable.fromJS(state).merge({
|
|
clientHeight: payload.clientHeight,
|
|
clientWidth: payload.clientWidth
|
|
}).toJS();
|
|
case INIT_LAYOUT:
|
|
return Immutable.fromJS(state).merge({
|
|
title: payload.title,
|
|
copyright: payload.copyright,
|
|
sections: payload.sections,
|
|
actions: payload.actions,
|
|
plugins: payload.plugins,
|
|
}).toJS();
|
|
case INIT_API_ROOT:
|
|
return Immutable.fromJS(state).merge({
|
|
apiRoot: payload.apiRoot,
|
|
iotVcmpWeb: payload.iotVcmpWeb
|
|
}).toJS();
|
|
case PEPPROJECTID:
|
|
return Immutable.fromJS(state).merge({
|
|
pepProjectId: payload.pepProjectId,
|
|
}).toJS();
|
|
default:
|
|
return state;
|
|
}
|
|
}
|
|
|
|
export default global;
|