Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
This tries to fix the ordering of deleted items after merging them to out array. First tried in #605 but that had some issues. This tries to be more comprehensive fix of the reconciliation logic.
This seems to work on all things I tried (but again somebody should check after me as I did not notice the last issue in the examples), but I feel it can still be flaky. When there is a single item, its sibling pointer points to itself. So if items are added and deleted one by one there is no way to know the ordering. Right now the only example with notifications work, but I think it only works because the items are added/deleted in one specific order and would again break in other cases.
So I think this is a bit of an upgrade and should solve ordering when deleting multiple items in any order, but definitely does not solve all the ordering issues. For that there will probably need to be some refactoring of the items tracking in the transition animation.