Skip to content

feat: Add NetworkVisibilityController #5939

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

Open
wants to merge 12 commits into
base: main
Choose a base branch
from

Conversation

gambinish
Copy link
Contributor

@gambinish gambinish commented Jun 6, 2025

The NetworkVisibilityController is a core implementation of network ordering and enablement functionality that was previously only available in the extension. This PR moves and expands this functionality from the extension's NetworkOrder controller to core, enabling network ordering and visibility features across both extension and mobile platforms. It also renames it to NetworkVisibilityController to more accurately represent what it does. Maybe in the future this can be expanded to include other UX enhancements that don't need to be tightly coupled with the NetworkController

Key motivations for this change:

  1. Platform Parity: Network ordering was previously only implemented in the extension via NetworkOrder controller, leaving mobile without this functionality. Moving this to core will unlock the ability to have this feature built on mobile.

  2. Network Enablement Feature: This work is part of the broader Network Enablement initiative (Network Controller: Multi Networks Enablement feature #5737). The controller has been expanded to include enabledNetworkMap state, allowing us to:

    • Track which networks are enabled/disabled
    • Support the new network enablement feature
  3. Code Quality Improvements: The move to core has provided an opportunity to:

    • Improve test coverage of the existing network ordering logic

The controller now handles three key aspects:

  • Network ordering (preserved from extension implementation)
  • Network enablement (new functionality. recently introduced on extension)

References

Checklist

  • I've updated the test suite for new or updated code as appropriate
  • I've updated documentation (JSDoc, Markdown, etc.) for new or updated code as appropriate
  • I've communicated my changes to consumers by updating changelogs for packages I've changed, highlighting breaking changes as necessary
  • I've prepared draft pull requests for clients and consumer packages to resolve any breaking changes

@gambinish gambinish requested a review from a team as a code owner June 6, 2025 21:41
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

1 participant