fix: clear pagination cursors when sort option changes #2811
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.
What/Why?
When the sort option is changed in the product filter, the before/after pagination query params are now removed. This prevents stale pagination cursors from being used with the new sort order, which could lead to incorrect results or empty pages.
Changes:
Testing
Screen.Recording.2026-01-06.at.14.21.21.mov
Migration
Change the import from
useQueryStatetouseQueryStates, update the state management toconst [params, setParams] = useQueryStates({ [paramName]: parseAsString.withDefault(defaultValue), before: parseAsString, after: parseAsString }, { shallow: false, history: 'push' }), change the optimistic state to useparams[paramName], and update theonValueChangehandler to callsetParams({ [paramName]: value, before: null, after: null })instead ofsetParam(value). If you haven't customized this file, simply pulling the changes will work without any additional action.