grafana/public/app/core/middlewares/application.ts
Hugo Häggmark 044bea0935
Chore: Fixes various strict null errors (#21763)
* Chore: Removes strict null checks in ReducerTester

* Chore: Fixes strict null errors in ConfigureStore

* Chore: Fixes strict null errors in reducer tests

* Chore: Fixes strict null errors in reducers tests

* Chore: Fixes strict null errors in reducers tests

* Chore: Fixes strict null errors in toggleLogActionsMiddleware

* Chore: Fixes strict null errors in navModelReducer

* Core: Fixes strict null errors in public/app/features/admin/state

* Chore: Fixes strict null errors in public/app/features/dashboard/state/reducers.test.ts

* Chore: Fixes strict null errors in public/app/features/explore/state/reducers.test.ts

* Chore: Fixes strict null errors in public/app/features/datasources/state/reducers.test.ts

* Chore: Fixes strict null errors in public/e2e-test/scenarios/templating/templatevariables-crud.test.ts

* Chore: Fixes strict null errors in public/app/features/dashboard/containers/DashboardPage.test.tsx
2020-01-28 09:13:56 +01:00

30 lines
1016 B
TypeScript

import { AnyAction, Dispatch, Middleware, MiddlewareAPI } from 'redux';
import { StoreState } from 'app/types/store';
import { toggleLogActions } from '../reducers/application';
export const toggleLogActionsMiddleware: Middleware<{}, StoreState> = (store: MiddlewareAPI<Dispatch, StoreState>) => (
next: Dispatch
) => (action: AnyAction) => {
const isLogActionsAction = action.type === toggleLogActions.type;
if (isLogActionsAction) {
return next(action);
}
const logActionsTrue =
window && window.location && window.location.search && window.location.search.indexOf('logActions=true') !== -1;
const logActionsFalse =
window && window.location && window.location.search && window.location.search.indexOf('logActions=false') !== -1;
const logActions = store.getState().application.logActions;
if (logActionsTrue && !logActions) {
store.dispatch(toggleLogActions());
}
if (logActionsFalse && logActions) {
store.dispatch(toggleLogActions());
}
return next(action);
};