Step 4/4: Add pagination to GraphQL release page
What does this MR do?
Adds pagination to the Releases page when the graphql_releases_page
feature flag is enabled.
Currently, when this feature flag is enabled, the page looks identical to the REST version of the page except that the pagination controls are missing.
Feature flag
Since this is the last step of #214241 (closed), this MR also enables the graphql_releases_page
feature flag by default, effectively making the GraphQL version of the Releases page the default.
Screenshots
Before (or when graphql_releases_page is disabled) |
After |
---|---|
Other user-facing changes
The only other user-facing change is the URL structure:
Description | Before | After |
---|---|---|
Initial navigation to the Releases page (no change) | /-/releases |
/-/releases |
Clicking the Next button | /-/releases?page=2 |
/-/releases?after=eyJpZCI6IjIiLCJyZWxlYXNlZF9hdCI6IjIwMjAtMDctMDkgMTk6MjA6MDYuOTY3NDM3MDAwIFVUQyJ9 |
Clicking the Prev button | /-/releases?page=1 |
/-/releases?before=eyJpZCI6IjIiLCJyZWxlYXNlZF9hdCI6IjIwMjAtMDctMDkgMTk6MjA6MDYuOTY3NDM3MDAwIFVUQyJ9 |
The Big PictureTM
This MR is one piece of a larger effort (#214241 (closed)):
- Step 1 (!33095 (merged)): Update the frontend to fetch its data from the GraphQL endpoint (without any pagination)
- Step 2 (!41621 (merged)): Add pagination components (but don't use them yet)
- Step 3 (!41636 (merged)): Pass data through Vuex store instead of through
props
- Step 4 (this MR): Begin using the components from step 2
Each of these steps are dependent on the preceding step.
Edited by Nathan Friend