Aurélien Georget bd91a2ef93 Add 'packages/strapi-plugin-settings-manager/' from commit 'cd241c14c6a6239bca279e7accd709ba58e87cc8'
git-subtree-dir: packages/strapi-plugin-settings-manager
git-subtree-mainline: 80aa83d8460c95366547e143c74bf79ea6ae69f8
git-subtree-split: cd241c14c6a6239bca279e7accd709ba58e87cc8
2017-01-15 20:14:40 +01:00

68 lines
1.3 KiB
JavaScript

/**
* The home state selectors
*/
import { createSelector } from 'reselect';
/*
* Select home state
*/
const selectHome = () => (state) => state.get('home');
const selectLoading = () => createSelector(
selectHome(),
(homeState) => homeState.get('loading')
);
const selectError = () => createSelector(
selectHome(),
(homeState) => homeState.get('error')
);
const selectGeneralSettings = () => createSelector(
selectHome(),
(homeState) => homeState.get('generalSettings')
);
const selectName = () => createSelector(
selectHome(),
(homeState) => homeState.get('name')
);
const selectDescription = () => createSelector(
selectHome(),
(homeState) => homeState.get('description')
);
const selectVersion = () => createSelector(
selectHome(),
(homeState) => homeState.get('version')
);
const selectLocationState = () => {
let prevRoutingState;
let prevRoutingStateJS;
return (state) => {
const routingState = state.get('route'); // or state.route
if (!routingState.equals(prevRoutingState)) {
prevRoutingState = routingState;
prevRoutingStateJS = routingState.toJS();
}
return prevRoutingStateJS;
};
};
export {
selectHome,
selectLoading,
selectError,
selectGeneralSettings,
selectName,
selectDescription,
selectVersion,
selectLocationState,
};