## Description
On iOS, deletion fails without any error if a batch has at least one
shared file. The only indicator that deletion failed is `List<String>`
returned by `PhotoManager.editor.deleteWithIds` will be empty.
So if shared files are distributed pretty evenly across list of
`localIDs` to be deleted, almost all batches would fail even with a
batch size of 10 (which was the minimum batch size before this change).
Recursively trying with a smaller batch size if the bigger batch size
fails makes it possible to delete all non-shared local files with more
system delete conformation dialogs though, but gets the work done for
users blocked on this.
```plaintext
[A, B, C, D, E]
└─ Attempt to delete; if failure:
├─ [A, B]
│ └─ Attempt to delete; if failure:
│ ├─ [A]
│ └─ [B]
└─ [C, D, E]
└─ Attempt to delete; if failure:
├─ [C]
└─ [D, E]
└─ Attempt to delete; if failure:
├─ [D]
└─ [E]