1 import {NgModule} from '@angular/core';
2 import {NgReduxModule, NgRedux, DevToolsExtension} from '@angular-redux/store';
3 import {RootEpics} from './epics';
5 import rootReducer, {AppState} from "./reducers";
6 import {AAIEpics} from "../services/aaiService/aai.epics";
7 import {createEpicMiddleware} from "redux-observable";
8 import {AaiService} from "../services/aaiService/aai.service";
9 import {applyMiddleware, createStore} from "redux";
12 imports: [NgReduxModule],
13 providers: [RootEpics, AAIEpics],
16 export class StoreModule {
18 public store: NgRedux<AppState>,
19 private aaiService : AaiService,
20 devTools: DevToolsExtension,
23 const epicMiddleware = createEpicMiddleware();
24 const persistedState = sessionStorage.getItem('reduxState') ?
25 JSON.parse(sessionStorage.getItem('reduxState')) : {};
27 const configStore = createStore(
30 applyMiddleware(epicMiddleware)
33 epicMiddleware.run(rootEpics.createEpics());
34 store.provideStore(configStore);