public undo(){ if(this.history.size>0){ var i = this.history.size; this.todos.update(todos=>this.history.last().deref()); this.history = this.history.pop(); } }
return updatedRedo.updateIn(['snapshots', 'undo'], (undoList: List<Record<ProjectSnapshot>>) => { // Ensure max snapshot stack size if(undoList.size < _SNAPSHOTS_MAX_STACKSIZE_) { // Insert first return undoList.unshift(action.payload) } elseĀ { // Remove last, insert first return undoList.pop().unshift(action.payload) } })