From: Stephen Smith Date: Wed, 10 May 2023 12:59:37 +0000 (-0400) Subject: 20377: Reject dataexplorer updates to incorrect page, allows dataexplorer to retry... X-Git-Tag: 2.6.2~1^2~4 X-Git-Url: https://git.arvados.org/arvados-workbench2.git/commitdiff_plain/ff3197c85e5520569eb8d67edaa9b7e9bc2ba427 20377: Reject dataexplorer updates to incorrect page, allows dataexplorer to retry with correct page Arvados-DCO-1.1-Signed-off-by: Stephen Smith --- diff --git a/src/store/data-explorer/data-explorer-reducer.ts b/src/store/data-explorer/data-explorer-reducer.ts index e93d291d..509fe054 100644 --- a/src/store/data-explorer/data-explorer-reducer.ts +++ b/src/store/data-explorer/data-explorer-reducer.ts @@ -70,14 +70,23 @@ export const dataExplorerReducer = ( SET_FILTERS: ({ id, columnName, filters }) => update(state, id, mapColumns(setFilters(columnName, filters))), - SET_ITEMS: ({ id, items, itemsAvailable, page, rowsPerPage }) => - update(state, id, (explorer) => ({ - ...explorer, - items, - itemsAvailable, - page: page || 0, - rowsPerPage, - })), + SET_ITEMS: ({ id, items, itemsAvailable, page, rowsPerPage }) => ( + update(state, id, (explorer) => { + // Reject updates to pages other than current, + // DataExplorer middleware should retry + if (explorer.page === page) { + return { + ...explorer, + items, + itemsAvailable, + page: page || 0, + rowsPerPage, + } + } else { + return explorer; + } + }) + ), APPEND_ITEMS: ({ id, items, itemsAvailable, page, rowsPerPage }) => update(state, id, (explorer) => ({