UNPKG

691 BJavaScriptView Raw
1import { UPDATE_SCROLL_TOP, START_CONSECUTIVE_TOGGLE } from './actions';
2
3function initialScrollTop(props, state = 0, action) {
4 if (!props.preserveScrollTop) {
5 return 0;
6 }
7
8 return action.type === UPDATE_SCROLL_TOP ? action.scrollTop : state;
9}
10
11function startConsecutiveToggle(props, state, action) {
12 return action.type === START_CONSECUTIVE_TOGGLE ? action.id : state;
13}
14
15export default function reducer(props, state = {}, action) {
16 return {
17 initialScrollTop: initialScrollTop(props, state.initialScrollTop, action),
18 consecutiveToggleStartId: startConsecutiveToggle(
19 props,
20 state.consecutiveToggleStartId,
21 action
22 )
23 };
24}