Move hikes store to main store
parent
bf05f88045
commit
9ba5d2c448
|
@ -5,7 +5,11 @@ const initValue = {
|
|||
title: 'Learn To Code | Free Code Camp',
|
||||
username: null,
|
||||
picture: null,
|
||||
points: 0
|
||||
points: 0,
|
||||
hikesApp: {
|
||||
hikes: [],
|
||||
currentHikes: {}
|
||||
}
|
||||
};
|
||||
|
||||
export default Store({
|
||||
|
@ -16,9 +20,14 @@ export default Store({
|
|||
init({ instance: appStore, args: [cat] }) {
|
||||
const { updateRoute, setUser, setTitle } = cat.getActions('appActions');
|
||||
const register = createRegistrar(appStore);
|
||||
let { setHikes } = cat.getActions('hikesActions');
|
||||
|
||||
// app
|
||||
register(setter(fromMany(setUser, setTitle, updateRoute)));
|
||||
|
||||
// hikes
|
||||
register(setHikes);
|
||||
|
||||
return appStore;
|
||||
}
|
||||
});
|
||||
|
|
|
@ -37,25 +37,34 @@ export default Actions({
|
|||
({ isPrimed, dashedName }) => {
|
||||
if (isPrimed) {
|
||||
return hikeActions.setHikes({
|
||||
transform: (oldState) => {
|
||||
const { hikes } = oldState;
|
||||
transform: (state) => {
|
||||
|
||||
const { hikesApp: oldState } = state;
|
||||
const currentHike = getCurrentHike(
|
||||
hikes,
|
||||
oldState.hikes,
|
||||
dashedName,
|
||||
oldState.currentHike
|
||||
);
|
||||
return Object.assign({}, oldState, { currentHike });
|
||||
|
||||
const hikesApp = { ...oldState, currentHike };
|
||||
return Object.assign({}, state, { hikesApp });
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
services.read('hikes', null, null, (err, hikes) => {
|
||||
if (err) {
|
||||
debug('an error occurred fetching hikes', err);
|
||||
return console.error(err);
|
||||
}
|
||||
|
||||
const hikesApp = {
|
||||
hikes,
|
||||
currentHike: getCurrentHike(hikes, dashedName)
|
||||
};
|
||||
|
||||
hikeActions.setHikes({
|
||||
set: {
|
||||
hikes: hikes,
|
||||
currentHike: getCurrentHike(hikes, dashedName)
|
||||
transform(oldState) {
|
||||
return Object.assign({}, oldState, { hikesApp });
|
||||
}
|
||||
});
|
||||
});
|
||||
|
|
|
@ -1,20 +0,0 @@
|
|||
import { Store } from 'thundercats';
|
||||
|
||||
const initialValue = {
|
||||
hikes: [],
|
||||
currentHike: {}
|
||||
};
|
||||
|
||||
export default Store({
|
||||
refs: {
|
||||
displayName: 'HikesStore',
|
||||
value: initialValue
|
||||
},
|
||||
init({ instance: hikeStore, args: [cat] }) {
|
||||
|
||||
let { setHikes } = cat.getActions('hikesActions');
|
||||
hikeStore.register(setHikes);
|
||||
|
||||
return hikeStore;
|
||||
}
|
||||
});
|
Loading…
Reference in New Issue