title: Is this the correct way to delete an item using redux?
body: <p>I know I'm not supposed to mutate the input and should clone the object to mutate it. I was following the convention used on a redux starter project which used: </p>
  
  <pre><code>ADD_ITEM: (state, action) =&gt; ({
    ...state,
    items: [...state.items, action.payload.value],
    lastUpdated: action.payload.date
  })
  </code></pre>
  
  <p>for adding an item - I get the use of spread to append the item in the array.</p>
  
  <p>for deleting I used: </p>
  
  <pre><code>DELETE_ITEM: (state, action) =&gt; ({
    ...state,
    items: [...state.items.splice(0, action.payload), ...state.items.splice(1)],
    lastUpdated: Date.now() 
  })
  </code></pre>
  
  <p>but this is mutating the input state object - is this forbidden even though I am returning a new object?</p>