Skip to content

Commit ff54c9e

Browse files
authored
Merge pull request #22727 from namhihi237/fix-19640-notification-inconsistently
fix remove only first request
2 parents 64e719e + 9489b25 commit ff54c9e

File tree

1 file changed

+9
-1
lines changed

1 file changed

+9
-1
lines changed

src/libs/actions/PersistedRequests.js

Lines changed: 9 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -25,7 +25,15 @@ function save(requestsToPersist) {
2525
* @param {Object} requestToRemove
2626
*/
2727
function remove(requestToRemove) {
28-
persistedRequests = _.reject(persistedRequests, (persistedRequest) => _.isEqual(persistedRequest, requestToRemove));
28+
/**
29+
* We only remove the first matching request because the order of requests matters.
30+
* If we were to remove all matching requests, we can end up with a final state that is different than what the user intended.
31+
*/
32+
const index = _.findIndex(persistedRequests, (persistedRequest) => _.isEqual(persistedRequest, requestToRemove));
33+
if (index !== -1) {
34+
persistedRequests.splice(index, 1);
35+
}
36+
2937
Onyx.set(ONYXKEYS.PERSISTED_REQUESTS, persistedRequests);
3038
}
3139

0 commit comments

Comments
 (0)