From 9ba5d2c44826df6ac6b3933b4ae299c765bf7609 Mon Sep 17 00:00:00 2001 From: Berkeley Martinez Date: Sun, 20 Dec 2015 19:24:38 -0800 Subject: [PATCH] Move hikes store to main store --- common/app/flux/Store.js | 11 ++++++++++- common/app/routes/Hikes/flux/Actions.js | 25 +++++++++++++++++-------- common/app/routes/Hikes/flux/Store.js | 20 -------------------- 3 files changed, 27 insertions(+), 29 deletions(-) delete mode 100644 common/app/routes/Hikes/flux/Store.js diff --git a/common/app/flux/Store.js b/common/app/flux/Store.js index 33741a1165f..f174314f5a4 100644 --- a/common/app/flux/Store.js +++ b/common/app/flux/Store.js @@ -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; } }); diff --git a/common/app/routes/Hikes/flux/Actions.js b/common/app/routes/Hikes/flux/Actions.js index f6ed407fae9..3eed55159fc 100644 --- a/common/app/routes/Hikes/flux/Actions.js +++ b/common/app/routes/Hikes/flux/Actions.js @@ -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 }); } }); }); diff --git a/common/app/routes/Hikes/flux/Store.js b/common/app/routes/Hikes/flux/Store.js deleted file mode 100644 index 9755ed679ad..00000000000 --- a/common/app/routes/Hikes/flux/Store.js +++ /dev/null @@ -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; - } -});