UNPKG

dash-renderer

Version:

render dash components in react

41 lines (33 loc) 902 B
const initialHistory = { past: [], present: {}, future: [] }; function history (state = initialHistory, action) { switch (action.type) { case 'UNDO': { const {past, present, future} = state; const previous = past[past.length - 1]; const newPast = past.slice(0, past.length - 1); return { past: newPast, present: previous, future: [ present, ...future ] }; } case 'REDO': { const {past, present, future} = state; const next = future[0]; const newFuture = future.slice(1); return { past: [...past, present], present: next, future: newFuture }; } default: { return state; } } } export default history;