All files / src squash.js

100% Statements 9/9
100% Branches 2/2
100% Functions 4/4
100% Lines 7/7

Press n or j to go to the next uncovered block, b, p or k for the previous block.

1 2 3 4 5 6 7 8 9 10 11 12 13  1x   5x 4x 1x   3x 4x     1x  
 
import forceArray from 'force-array'
 
const squash = key => updates => (state, event) => {
  if (event.type !== key) {
    return state
  }
  return forceArray(updates)
    .reduce((state, fn) => fn(state, event.payload), state)
}
 
export default squash