feat(map): Map will remember if it is hidden between challenges
This commit is contained in:
@ -7,6 +7,7 @@ import {
|
|||||||
handleActions
|
handleActions
|
||||||
} from 'berkeleys-redux-utils';
|
} from 'berkeleys-redux-utils';
|
||||||
|
|
||||||
|
import { types as challengeTypes } from '../../routes/Challenges/redux';
|
||||||
import ns from '../ns.json';
|
import ns from '../ns.json';
|
||||||
|
|
||||||
import windowEpic from './window-epic.js';
|
import windowEpic from './window-epic.js';
|
||||||
@ -31,8 +32,8 @@ export const types = createTypes([
|
|||||||
'windowResized',
|
'windowResized',
|
||||||
|
|
||||||
// commands
|
// commands
|
||||||
'updateNavHeight',
|
'hidePane',
|
||||||
'hidePane'
|
'updateNavHeight'
|
||||||
], ns);
|
], ns);
|
||||||
|
|
||||||
export const panesMapUpdated = createAction(
|
export const panesMapUpdated = createAction(
|
||||||
@ -51,13 +52,14 @@ export const mouseReleased = createAction(types.mouseReleased);
|
|||||||
export const windowResized = createAction(types.windowResized);
|
export const windowResized = createAction(types.windowResized);
|
||||||
|
|
||||||
// commands
|
// commands
|
||||||
export const updateNavHeight = createAction(types.updateNavHeight);
|
|
||||||
export const hidePane = createAction(types.hidePane);
|
export const hidePane = createAction(types.hidePane);
|
||||||
|
export const updateNavHeight = createAction(types.updateNavHeight);
|
||||||
|
|
||||||
const defaultState = {
|
const defaultState = {
|
||||||
height: 600,
|
height: 600,
|
||||||
width: 800,
|
width: 800,
|
||||||
navHeight: 50,
|
navHeight: 50,
|
||||||
|
isMapPaneHidden: false,
|
||||||
panes: [],
|
panes: [],
|
||||||
panesByName: {},
|
panesByName: {},
|
||||||
pressedDivider: null,
|
pressedDivider: null,
|
||||||
@ -197,6 +199,10 @@ export default function createPanesAspects({ createPanesMap }) {
|
|||||||
[types.updateNavHeight]: (state, { payload: navHeight }) => ({
|
[types.updateNavHeight]: (state, { payload: navHeight }) => ({
|
||||||
...state,
|
...state,
|
||||||
navHeight
|
navHeight
|
||||||
|
}),
|
||||||
|
[challengeTypes.toggleMap]: state => ({
|
||||||
|
...state,
|
||||||
|
isMapPaneHidden: !state.isMapPaneHidden
|
||||||
})
|
})
|
||||||
}),
|
}),
|
||||||
defaultState,
|
defaultState,
|
||||||
@ -215,7 +221,7 @@ export default function createPanesAspects({ createPanesMap }) {
|
|||||||
panes[name] = {
|
panes[name] = {
|
||||||
name,
|
name,
|
||||||
dividerLeft,
|
dividerLeft,
|
||||||
isHidden: false
|
isHidden: name === 'Map' ? state.isMapPaneHidden : false
|
||||||
};
|
};
|
||||||
return panes;
|
return panes;
|
||||||
}, {})
|
}, {})
|
||||||
|
Reference in New Issue
Block a user