mirror of
https://github.com/DSpace/dspace-angular.git
synced 2025-10-07 10:04:11 +00:00
Merge pull request #84 from 4Science/freeze
ngrx-store-freeze added and configured
This commit is contained in:
@@ -151,6 +151,7 @@
|
|||||||
"karma-sourcemap-loader": "^0.3.7",
|
"karma-sourcemap-loader": "^0.3.7",
|
||||||
"karma-webdriver-launcher": "^1.0.4",
|
"karma-webdriver-launcher": "^1.0.4",
|
||||||
"karma-webpack": "1.8.0",
|
"karma-webpack": "1.8.0",
|
||||||
|
"ngrx-store-freeze": "^0.1.9",
|
||||||
"node-sass": "4.0.0",
|
"node-sass": "4.0.0",
|
||||||
"nodemon": "1.11.0",
|
"nodemon": "1.11.0",
|
||||||
"npm-run-all": "4.0.2",
|
"npm-run-all": "4.0.2",
|
||||||
|
@@ -3,8 +3,12 @@ import { routerReducer, RouterState } from "@ngrx/router-store";
|
|||||||
import { headerReducer, HeaderState } from './header/header.reducer';
|
import { headerReducer, HeaderState } from './header/header.reducer';
|
||||||
import { hostWindowReducer, HostWindowState } from "./shared/host-window.reducer";
|
import { hostWindowReducer, HostWindowState } from "./shared/host-window.reducer";
|
||||||
import { CoreState, coreReducer } from "./core/core.reducers";
|
import { CoreState, coreReducer } from "./core/core.reducers";
|
||||||
|
import { storeFreeze } from 'ngrx-store-freeze';
|
||||||
|
import { compose } from "@ngrx/core";
|
||||||
import { StoreActionTypes } from "./store.actions";
|
import { StoreActionTypes } from "./store.actions";
|
||||||
|
|
||||||
|
import { EnvConfig } from '../config';
|
||||||
|
|
||||||
export interface AppState {
|
export interface AppState {
|
||||||
core: CoreState;
|
core: CoreState;
|
||||||
router: RouterState;
|
router: RouterState;
|
||||||
@@ -20,10 +24,16 @@ export const reducers = {
|
|||||||
};
|
};
|
||||||
|
|
||||||
export function rootReducer(state: any, action: any) {
|
export function rootReducer(state: any, action: any) {
|
||||||
|
let output;
|
||||||
if (action.type === StoreActionTypes.REHYDRATE) {
|
if (action.type === StoreActionTypes.REHYDRATE) {
|
||||||
state = action.payload;
|
state = action.payload;
|
||||||
}
|
}
|
||||||
return combineReducers(reducers)(state, action);
|
if (EnvConfig.production) {
|
||||||
|
output = combineReducers(reducers)(state, action);
|
||||||
|
} else {
|
||||||
|
output = compose(storeFreeze, combineReducers)(reducers)(state, action);
|
||||||
|
}
|
||||||
|
return output;
|
||||||
}
|
}
|
||||||
|
|
||||||
export const NGRX_CACHE_KEY = "NGRX_STORE";
|
export const NGRX_CACHE_KEY = "NGRX_STORE";
|
||||||
|
10
yarn.lock
10
yarn.lock
@@ -1455,6 +1455,10 @@ deep-extend@~0.4.0:
|
|||||||
version "0.4.1"
|
version "0.4.1"
|
||||||
resolved "https://registry.yarnpkg.com/deep-extend/-/deep-extend-0.4.1.tgz#efe4113d08085f4e6f9687759810f807469e2253"
|
resolved "https://registry.yarnpkg.com/deep-extend/-/deep-extend-0.4.1.tgz#efe4113d08085f4e6f9687759810f807469e2253"
|
||||||
|
|
||||||
|
deep-freeze-strict@^1.1.1:
|
||||||
|
version "1.1.1"
|
||||||
|
resolved "https://registry.yarnpkg.com/deep-freeze-strict/-/deep-freeze-strict-1.1.1.tgz#77d0583ca24a69be4bbd9ac2fae415d55523e5b0"
|
||||||
|
|
||||||
deep-freeze@0.0.1:
|
deep-freeze@0.0.1:
|
||||||
version "0.0.1"
|
version "0.0.1"
|
||||||
resolved "https://registry.yarnpkg.com/deep-freeze/-/deep-freeze-0.0.1.tgz#3a0b0005de18672819dfd38cd31f91179c893e84"
|
resolved "https://registry.yarnpkg.com/deep-freeze/-/deep-freeze-0.0.1.tgz#3a0b0005de18672819dfd38cd31f91179c893e84"
|
||||||
@@ -3656,6 +3660,12 @@ ng2-translate@4.2.0:
|
|||||||
version "4.2.0"
|
version "4.2.0"
|
||||||
resolved "https://registry.yarnpkg.com/ng2-translate/-/ng2-translate-4.2.0.tgz#83bc8feca329b5fc56a636e36073241c6280c659"
|
resolved "https://registry.yarnpkg.com/ng2-translate/-/ng2-translate-4.2.0.tgz#83bc8feca329b5fc56a636e36073241c6280c659"
|
||||||
|
|
||||||
|
ngrx-store-freeze@^0.1.9:
|
||||||
|
version "0.1.9"
|
||||||
|
resolved "https://registry.yarnpkg.com/ngrx-store-freeze/-/ngrx-store-freeze-0.1.9.tgz#b20f18f21fd5efc4e1b1e05f6f279674d0f70c81"
|
||||||
|
dependencies:
|
||||||
|
deep-freeze-strict "^1.1.1"
|
||||||
|
|
||||||
no-case@^2.2.0:
|
no-case@^2.2.0:
|
||||||
version "2.3.1"
|
version "2.3.1"
|
||||||
resolved "https://registry.yarnpkg.com/no-case/-/no-case-2.3.1.tgz#7aeba1c73a52184265554b7dc03baf720df80081"
|
resolved "https://registry.yarnpkg.com/no-case/-/no-case-2.3.1.tgz#7aeba1c73a52184265554b7dc03baf720df80081"
|
||||||
|
Reference in New Issue
Block a user