Newer
Older
import portalConfig from '../configs/PortalConfig'
import { combineReducers } from 'redux'
import { reducer as toastrReducer } from 'react-redux-toastr'
import error from './general/error'
import options from './general/options'
import animation from './general/animation'
import leafletMap from './general/leafletMap'
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
}
// Import and add portal spefic reducers:
const { portalID } = portalConfig
const { perspectiveConfig } = await import(`../configs/${portalID}/PerspectiveConfig`)
const { perspectiveConfigOnlyInfoPages } = await import(`../configs/${portalID}/PerspectiveConfigOnlyInfoPages`)
for (const perspective of perspectiveConfig) {
if (perspective.searchMode && perspective.searchMode === 'federated-search') {
const { default: reducer } = await import(`./${portalID}/clientSideFacetedSearch`)
reducers.clientSideFacetedSearch = reducer
} else if (perspective.searchMode && perspective.searchMode === 'full-text-search') {
const { default: reducer } = await import(`./${portalID}/fullTextSearch`)
reducers.fullTextSearch = reducer
} else {
const perspectiveID = perspective.id
const { default: reducer } = await import(`./${portalID}/${perspectiveID}`)
const { default: facetReducer } = await import(`./${portalID}/${perspectiveID}Facets`)
let facetConstrainselfReducer = null
try {
const { default: importedFacetConstrainselfReducer } = await import(`./${portalID}/${perspectiveID}FacetsConstrainSelf`)
facetConstrainselfReducer = importedFacetConstrainselfReducer
} catch (error) { }
reducers[perspectiveID] = reducer
reducers[`${perspectiveID}Facets`] = facetReducer
if (facetConstrainselfReducer) {
reducers[`${perspectiveID}FacetsConstrainSelf`] = facetConstrainselfReducer
}
}
}
for (const perspective of perspectiveConfigOnlyInfoPages) {
const perspectiveID = perspective.id
const { default: reducer } = await import(`./${portalID}/${perspectiveID}`)
reducers[perspectiveID] = reducer
}
const reducer = combineReducers(reducers)