Move hikes store to main store

pull/6034/head
Berkeley Martinez 2015-12-20 19:24:38 -08:00
parent bf05f88045
commit 9ba5d2c448
3 changed files with 27 additions and 29 deletions

View File

@ -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;
}
});

View File

@ -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 });
}
});
});

View File

@ -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;
}
});