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.
65 lines
1.8 KiB
65 lines
1.8 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: '',
|
|
pomsMonitor: '',
|
|
pomsKubesphere: '',
|
|
pomsAmbari: '',
|
|
pomsKowl: '',
|
|
pomsPghero: '',
|
|
pomsEs: '',
|
|
pomsNotebook: '',
|
|
dcWeb: '',
|
|
qiniu: {}
|
|
}, 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,
|
|
pomsMonitor: payload.pomsMonitor,
|
|
pomsKubesphere: payload.pomsKubesphere,
|
|
pomsAmbari: payload.pomsAmbari,
|
|
pomsKowl: payload.pomsKowl,
|
|
pomsPghero: payload.pomsPghero,
|
|
pomsEs: payload.pomsEs,
|
|
pomsNotebook: payload.pomsNotebook,
|
|
dcWeb: payload.dcWeb,
|
|
qiniu: payload.qiniu,
|
|
webEmis: payload.webEmis,
|
|
webOa: payload.webOa,
|
|
}).toJS();
|
|
case PEPPROJECTID:
|
|
return Immutable.fromJS(state).merge({
|
|
pepProjectId: payload.pepProjectId,
|
|
}).toJS();
|
|
default:
|
|
return state;
|
|
}
|
|
}
|
|
|
|
export default global;
|