@scion-scxml/redux-devtools-scion-monitor
Version:
Redux monitor to visualize SCXML state
31 lines (23 loc) • 871 B
JavaScript
;
exports.__esModule = true;
exports.default = reducer;
var _actions = require('./actions');
function initialScrollTop(props) {
var state = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 0;
var action = arguments[2];
if (!props.preserveScrollTop) {
return 0;
}
return action.type === _actions.UPDATE_SCROLL_TOP ? action.scrollTop : state;
}
function startConsecutiveToggle(props, state, action) {
return action.type === _actions.START_CONSECUTIVE_TOGGLE ? action.id : state;
}
function reducer(props) {
var state = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};
var action = arguments[2];
return {
initialScrollTop: initialScrollTop(props, state.initialScrollTop, action),
consecutiveToggleStartId: startConsecutiveToggle(props, state.consecutiveToggleStartId, action)
};
}