-
Notifications
You must be signed in to change notification settings - Fork 391
change: [UIE-10012] - Implement UX and user feedback for linode interfaces feature in Create linode page #13281
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
base: develop
Are you sure you want to change the base?
Conversation
…faces feature in Create linode page
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.
Pull request overview
This PR implements UX and content updates to the Networking section of the Create Linode page based on design specifications and technical writing feedback. The changes reorganize the interface configuration UI and update descriptive text to improve clarity and user experience.
Changes:
- Relocated Network Interface Type selection from Networking section to within individual interface configuration
- Updated tooltip descriptions for network connection options and interface types with clearer, more concise language
- Added "(Recommended)" label to Linode Interfaces option and removed the accordion wrapper for Network Interface Type
- Updated backup pricing description and Private IP notice text for better clarity
Reviewed changes
Copilot reviewed 9 out of 9 changed files in this pull request and generated 3 comments.
Show a summary per file
| File | Description |
|---|---|
| Networking.tsx | Removed InterfaceGeneration import and component from main Networking section |
| LinodeInterface.tsx | Added InterfaceGeneration component to individual interface configuration |
| LinodeInterface.test.tsx | Added test for Network Interface Type radio options and updated assertions to use toBeVisible |
| InterfaceType.tsx | Updated tooltip descriptions for network connection types and adjusted positioning |
| InterfaceType.test.tsx | Added comprehensive unit tests for InterfaceType component functionality |
| InterfaceGeneration.tsx | Removed accordion wrapper, updated labels and tooltip content, restructured layout |
| InterfaceGeneration.test.tsx | Refactored tests to match new non-accordion structure and added new test cases |
| PrivateIP.tsx | Updated Private IP notice text with clearer VPC recommendation messaging |
| Backups.tsx | Simplified backup pricing description text |
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
packages/manager/src/features/Linodes/LinodeCreate/Networking/InterfaceGeneration.test.tsx
Outdated
Show resolved
Hide resolved
packages/manager/src/features/Linodes/LinodeCreate/Networking/InterfaceGeneration.test.tsx
Outdated
Show resolved
Hide resolved
packages/manager/src/features/Linodes/LinodeCreate/Networking/InterfaceGeneration.test.tsx
Outdated
Show resolved
Hide resolved
…ture in Account settings page
Cloud Manager UI test results🎉 855 passing tests on test run #3 ↗︎
|
bnussman-akamai
left a comment
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.
| <Paper> | ||
| <Stack spacing={2}> | ||
| <Typography variant="h2">Networking</Typography> | ||
| <InterfaceGeneration /> |
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.
I think we intentionally kept the <InterfaceGeneration /> component here (rather than inside of <LinodeInterface />) because we structured our code so that multiple Interfaces could be configured in the future.
This change is fine for the time being, but if we ever allow configuring many interfaces, we'll probably need to move the <InterfaceGeneration /> component so it only renders once rather than for every <LinodeInterface /> that is rendered.
| <Stack mt={1.25} spacing={0.5}> | ||
| <Stack direction="row"> | ||
| <Typography sx={(theme) => ({ font: theme.font.bold })}> | ||
| Linode Interfaces (Recommended) |
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.
I guess it's up to UX, but I find it odd we're not using the Beta/New chip here (<LinodeInterfaceFeatureStatusChip />). I think it would be smart to keep becuase it's a common pattern we use for new/beta features.
| beforeEach(() => { | ||
| vi.clearAllMocks(); | ||
| }); |
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.
I think this clearAllMocks call is unnecessary. We could remove it
jdamore-linode
left a comment
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 @grevanak-akamai, validated each change and didn't observe any regressions
coliu-akamai
left a comment
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.
✅ confirmed steps
thanks @grevanak-akamai!
I didn't see prototypes/discussion in the ticket for this, but just wanted to confirm that the VPC/VLAN fields are supposed to go below the Network Interface Type selection instead of above?

Description 📝
As part of this PR, apply changes in Networking section under create linode page as suggested by UX and TW
Changes 🔄
Scope 🚢
Upon production release, changes in this PR will be visible to:
Target release date 🗓️
Jan 28
Preview 📷
How to test 🧪
/linodes/create/ospageVerification steps
Author Checklists
As an Author, to speed up the review process, I considered 🤔
👀 Doing a self review
❔ Our contribution guidelines
🤏 Splitting feature into small PRs
➕ Adding a changeset
🧪 Providing/improving test coverage
🔐 Removing all sensitive information from the code and PR description
🚩 Using a feature flag to protect the release
👣 Providing comprehensive reproduction steps
📑 Providing or updating our documentation
🕛 Scheduling a pair reviewing session
📱 Providing mobile support
♿ Providing accessibility support
As an Author, before moving this PR from Draft to Open, I confirmed ✅