-
Notifications
You must be signed in to change notification settings - Fork 361
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
feat: [M3-7948] - Add Region filtering to Linodes landing table #10639
feat: [M3-7948] - Add Region filtering to Linodes landing table #10639
Conversation
Coverage Report: ✅ |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
x-filter in mock requests looks good and so does the persistence of the selection.
packages/manager/src/features/Linodes/LinodesLanding/DisplayLinodes.tsx
Outdated
Show resolved
Hide resolved
packages/manager/src/features/Linodes/LinodesLanding/ListView.tsx
Outdated
Show resolved
Hide resolved
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Thanks for the changes! All
as a default is great, card view looks good, and putting the region type filter in its own component is clean.
Let's get the merge conflict resolved and make sure CI passes. And I think we do actually need to extend the width of the autocomplete / add padding after all. The checkmark is too close to the selection:
{isGeckoLAEnabled && ( | ||
<Paper sx={{ padding: 1 }}> | ||
<RegionTypeFilter handleRegionFilter={handleRegionFilter} /> | ||
</Paper> | ||
)} |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This was the main change
@@ -241,7 +247,7 @@ class ListLinodes extends React.Component<CombinedProps, State> { | |||
return <CircleProgress />; | |||
} | |||
|
|||
if (this.props.linodesData.length === 0) { | |||
if (totalNumLinodes === 0 && linodesData.length === 0) { |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
We can't just rely on the length of linodesData
because the 0
could be coming from filtered data and the user could have still have linodes
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
UI: I was seeing a minor issue when one of the categories has no Linodes, Summary View is selected, and we are not grouping by tags. Can we add a consistent amount of spacing before the "No items to display"?
Code: Removal of edge
looked good. Saw just a few nits.
Screen.Recording.2024-10-03.at.3.43.04.PM.mov
packages/manager/src/features/Linodes/LinodesLanding/DisplayGroupedLinodes.tsx
Outdated
Show resolved
Hide resolved
packages/manager/src/features/Linodes/LinodesLanding/DisplayLinodes.tsx
Outdated
Show resolved
Hide resolved
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Looks good!
I wonder if we should add some kind of small loading state for when the user is switching between different region filters
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
🚀
@bnussman-akamai Good point, just realized we don't use the Edit: M3-8717 |
Cloud Manager E2E Run #6632
Run Properties:
|
Project |
Cloud Manager E2E
|
Run status |
Failed #6632
|
Run duration | 27m 29s |
Commit |
5155c6a0af: feat: [M3-7948] - Add Region filtering to Linodes landing table (#10639)
|
Committer | Hana Xu |
View all properties for this run ↗︎ |
Test results | |
---|---|
Failures |
1
|
Flaky |
4
|
Pending |
2
|
Skipped |
0
|
Passing |
424
|
Tests for review
cypress/e2e/core/placementGroups/delete-placement-groups.spec.ts • 1 failed test
Test | Artifacts | |
---|---|---|
Placement Group deletion > can delete with Linodes assigned when unexpected error show up and retry |
Screenshots
Video
|
linodes/linode-config.spec.ts • 1 flaky test
Test | Artifacts | |
---|---|---|
Linode Config management > End-to-End > Clones a config |
Screenshots
Video
|
linodes/create-linode.spec.ts • 1 flaky test
Test | Artifacts | |
---|---|---|
... > creates a Shared CPU Linode |
Screenshots
Video
|
linodes/rebuild-linode.spec.ts • 1 flaky test
Test | Artifacts | |
---|---|---|
rebuild linode > cannot rebuild a provisioning linode |
Screenshots
Video
|
volumes/delete-volume.spec.ts • 1 flaky test
Test | Artifacts | |
---|---|---|
volume delete flow > deletes a volume |
Screenshots
Video
|
…de#10639) ## Description 📝 Add support for region filtering in the Linodes landing table for Gecko LA. Region filter is saved in local storage similar to the "Show X" dropdown. ## Changes 🔄 List any change relevant to the reviewer. - Add `site_type` to the linode instance type - Removed `edge` references where possible - Add region filter dropdown to the Linodes landing table ## How to test 🧪 ### Verification steps - `All` should display all Linodes (core and distributed regions) - `Core` should only display Linodes in `core` regions - `Distributed` should only display Linodes in `distributed` regions - Ensure sorting, summary, and tag view still work as normal - Navigate to another page and go back to the Landing page, the region selection should stay the same
Description 📝
Add support for region filtering in the Linodes landing table for Gecko LA. Region filter is saved in local storage similar to the "Show X" dropdown.
Changes 🔄
List any change relevant to the reviewer.
site_type
to the linode instance typeedge
references where possiblePreview 📷
(ip address has been redacted)
Screen.Recording.2024-10-03.at.1.51.32.PM.mov
How to test 🧪
Verification steps
All
should display all Linodes (core and distributed regions)Core
should only display Linodes incore
regionsDistributed
should only display Linodes indistributed
regionsAs an Author I have considered 🤔
Check all that apply