Skip to content
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

Fix highlighting nav items with nested routes #14735

Open
wants to merge 1 commit into
base: main
Choose a base branch
from

Conversation

aptmac
Copy link

@aptmac aptmac commented Feb 7, 2025

Hi! I've been working on porting over an application to be a dynamic plugin, and ran into a nav highlighting issue where if a nested route existed for another nav item then both of them would be highlighted. At the moment I have some code in our plugin that corrects the highlighting, but it would be nicer if this solution was baked into the console.

For example, our application (cryostat) has a landing page which displays dashboards. In our original web app we want this to be the entry point, so it uses the route "/cryostat". In our nav we have a "Dashboard" item, that routes to "/cryostat", alongside all the other nav items that route to other pages.

When working on the console plugin we found that if we visited any other page, lets say "/cryostat/about" for example, then both nav items for "Dashboard" and "About" would be highlighted. This is because the current logic tries to match the href and location fragments, and returns true for both nav items because of our nested route.

I posted a question about this on Slack and was pointed at the code here, so here's a change that will make the highlighting logic match the scopeless href to scopeless location in order to avoid nested routes from being highlighted.

Before

before

After

after

@openshift-ci openshift-ci bot requested review from kyoto and Mylanos February 7, 2025 17:35
@openshift-ci openshift-ci bot added the component/core Related to console core functionality label Feb 7, 2025
Copy link
Contributor

openshift-ci bot commented Feb 7, 2025

[APPROVALNOTIFIER] This PR is NOT APPROVED

This pull-request has been approved by: aptmac
Once this PR has been reviewed and has the lgtm label, please assign vikram-raj for approval. For more information see the Code Review Process.

The full list of commands accepted by this bot can be found here.

Needs approval from an approver in each of these files:

Approvers can indicate their approval by writing /approve in a comment
Approvers can cancel approval by writing /approve cancel in a comment

Copy link
Contributor

openshift-ci bot commented Feb 7, 2025

Hi @aptmac. Thanks for your PR.

I'm waiting for a openshift member to verify that this patch is reasonable to test. If it is, they should reply with /ok-to-test on its own line. Until that is done, I will not automatically test new commits in this PR, but the usual testing commands by org members will still work. Regular contributors should join the org to skip this step.

Once the patch is verified, the new status will be reflected by the ok-to-test label.

I understand the commands that are listed here.

Instructions for interacting with me using PR comments are available here. If you have questions or suggestions related to my behavior, please file an issue against the kubernetes-sigs/prow repository.

@openshift-ci openshift-ci bot added the needs-ok-to-test Indicates a PR that requires an org member to verify it is safe to test. label Feb 7, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
component/core Related to console core functionality needs-ok-to-test Indicates a PR that requires an org member to verify it is safe to test.
Projects
None yet
Development

Successfully merging this pull request may close these issues.

1 participant