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

[Meta] Nav alignment for Serverless launch #166545

Closed
16 tasks done
ryankeairns opened this issue Sep 14, 2023 · 9 comments
Closed
16 tasks done

[Meta] Nav alignment for Serverless launch #166545

ryankeairns opened this issue Sep 14, 2023 · 9 comments
Assignees
Labels
Team:SharedUX Team label for AppEx-SharedUX (formerly Global Experience)

Comments

@ryankeairns
Copy link
Contributor

ryankeairns commented Sep 14, 2023

This is a tracking issue to capture alignment-related tasks for Serverless navigation and IA.
Derived from the Kibana Nav Design Alignment doc.

Observability

Preview Give feedback
  1. Team:SharedUX
    eokoneyo
  2. Team:SharedUX
    eokoneyo
  3. Team:SharedUX
    eokoneyo
  4. Team:SharedUX
    eokoneyo

Elasticsearch

Preview Give feedback
  1. Team:SharedUX
    eokoneyo
  2. Team:SharedUX
    eokoneyo

Security

Preview Give feedback
  1. 4 of 5
    Team:SharedUX
    eokoneyo sebelga
    semd tsullivan

Platform > Shared UX

Preview Give feedback

Platform > Platform UX

Preview Give feedback
@botelastic botelastic bot added the needs-team Issues missing a team label label Sep 14, 2023
@petrklapka petrklapka added the Team:SharedUX Team label for AppEx-SharedUX (formerly Global Experience) label Sep 20, 2023
@elasticmachine
Copy link
Contributor

Pinging @elastic/appex-sharedux (Team:SharedUX)

@botelastic botelastic bot removed the needs-team Issues missing a team label label Sep 20, 2023
@daveyholler
Copy link
Contributor

@ryankeairns Just a heads up, Search fought to keep the "Performance" link in the nav a while back. Before I go back to the team and address this again, is there a reason that we can't have it in the nav?

@ryankeairns
Copy link
Contributor Author

ryankeairns commented Sep 22, 2023

@ryankeairns Just a heads up, Search fought to keep the "Performance" link in the nav a while back. Before I go back to the team and address this again, is there a reason that we can't have it in the nav?

This was clarified during a discussion this morning. Keep the Performance link as you have it. I have removed the task from your list.

For those following along
There was some back-and-forth on the distinct Performance page on the Cloud side. For the time being, there will not be a distinct Performance page, but there are performance-related settings on the detail/overview page. With that, the consensus was that it is still relevant to keep the Performance link (under Project settigns) and link to the overview page.

Ikuni17 pushed a commit that referenced this issue Sep 27, 2023
## Summary

Closes #162507
Relates to #166545
^ additional IA-related tasks - related to the alignment discussions -
can be found here

## Work for next steps
In this PR, some work items are being saved for a next PR:
1. _Only affects Search solution_: Navigation "group titles" do not
create a breadcrumb item, as sub-items in the group are not
hierarchically under the title. To address this, group titles may be
going away from the design.
#167323
2. _Only affects Observability solution_: Navigation accordions can not
be collapsed and do not show arrow icons. To address this, in a later PR
we will add internal state management for the open/closed state of each
accordion. #167328
3. _Affects all solutions:_ The "collapsed" state of the side nav should
show a docked view with icons-only. To address this, in later PRs we
will bring Security solution into the unified nav components.
4. #167326
5. #167330
6. #167332

### Recordings
These videos show a before-and-after with the new UI. 
| project | old | new |
|--|--|--|
|observability|
https://github.com/elastic/kibana/assets/908371/663765a3-4e4b-416e-b7d5-7d87eece83e8
| <img width="298" alt="CleanShot 2023-09-22 at 14 20 48@2x"
src="https://github.com/elastic/kibana/assets/446285/d61f6fe0-a6a9-4806-bc27-08b0ff2afb49">
|
|search|
https://github.com/elastic/kibana/assets/908371/f383773e-27a8-4485-8289-274d8231b960
| <img width="281" alt="CleanShot 2023-09-22 at 14 18 43@2x"
src="https://github.com/elastic/kibana/assets/446285/901b8fc1-9945-4cee-b566-5e4539f08043">
|
|security|
https://github.com/elastic/kibana/assets/908371/481f4533-64e5-41db-bc8e-5012f82c188a
| *will change to the new style after this PR and the flyout/panel
support are completed |

### Checklist

- [x] [Unit or functional
tests](https://www.elastic.co/guide/en/kibana/master/development-tests.html)
were updated or added to match the most common scenarios
- [ ] Any UI touched in this PR is usable by keyboard only (learn more
about [keyboard accessibility](https://webaim.org/techniques/keyboard/))
- [ ] Any UI touched in this PR does not create any new axe failures
(run axe in browser:
[FF](https://addons.mozilla.org/en-US/firefox/addon/axe-devtools/),
[Chrome](https://chrome.google.com/webstore/detail/axe-web-accessibility-tes/lhdoppojpmngadmnindnejefpokejbdd?hl=en-US))
- [ ] This renders correctly on smaller devices using a responsive
layout. (You can test this [in your
browser](https://www.browserstack.com/guide/responsive-testing-on-local-server))
- [ ] This was checked for [cross-browser
compatibility](https://www.elastic.co/support/matrix#matrix_browsers)

---------

Co-authored-by: Sébastien Loix <[email protected]>
semd added a commit that referenced this issue Oct 4, 2023
)

## Summary

Main ticket: #166545

This PR integrates the shared-ux `DefaultNavigation` component in the
Security Solution project for serverless.

These changes do not replace the original Security left navigation yet,
which is still the navigation component displayed by default. In order
to render the shared-ux `DefaultNavigation` this experimental flag
should be enabled:

`xpack.securitySolutionServerless.enableExperimental:
['platformNavEnabled']`

<img width="223" alt="Captura de pantalla 2023-09-25 a les 14 00 49"
src="https://github.com/elastic/kibana/assets/17747913/91f247ce-ad9c-4093-a0f7-dbca63164b4a">


## Implementation

- Security navigation is still the default. Please enable the
`platformNavEnabled` experimental flag to render the shared navigation.
- We have two different formatters from the security navigation links
config to the navigation tree required in serverless:
- ChromeNavigationTree: registered directly to the serverless plugin for
the breadcrumbs to work when the navigation is customized with the
Security-specific nav. It will be removed after the migration to the
shared nav.
- NavigationTree: the format the shared nav uses, it already registers
the chromeNavigationTree for the breadcrumbs to the serverless plugin by
itself.
- Security plugin `deepLinks` needed to be formatted differently to make
this shared navigation work, since the `navLinkStatus: hidden` prevents
the links from being processed and displayed, this has been solved via
the `setDeepLinksFormatter` exposed on the plugin setup contract.

---------

Co-authored-by: kibanamachine <[email protected]>
@tsullivan
Copy link
Member

Updated the checklist: #164910 was merged last week.

@florent-leborgne
Copy link
Contributor

florent-leborgne commented Oct 18, 2023

Hello @eokoneyo, is it possible to have a follow-up to some PRs (#168562 & #168565) to align the current case and wording of Get Started (Observability) and Getting started (ES) to the correct label: Get started (both for the navs and the breadcrumb)? Security seems to have the correct case and wording already.
image

Also wondering how we can ensure that the information for such changes is passed to the tech writing teams working on serverless docs?
cc @KOTungseth

semd added a commit that referenced this issue Oct 18, 2023
## Summary

needed for: #166545

This PR makes the generic Management landing page available in Security
Solution project navigation. Unifying the experience with the rest of
Solutions

- Security Solution specific `Project Settings` landing page removed.
  - `SecurityPageName.projectSettings` removed.
  - `Project Settings` landing page component and route were removed.
  - Unused icons cleaned. 
  - Link to Management application added in the SideNav.
  - Management app "cards landing page" enabled.
- Cleaned the redirect logic in the Management app, this API was created
only for Security and is not used anymore.
- `developerSettings` config is not needed anymore and has been removed.
- `Entity risk score`, `Maps`, and `Visualize library` links are
configured and available, but they are not displayed in the side
navigation. They will be added as cards on the Management landing page
in a follow-up.
- Unified Navigation design implemented as a backup plan for Serverless
public preview.
- Shared-ux `DefaultNavigation` implementation is still under the
`platformNavEnabled` experimental flag.

## Screenshot

<img width="1717" alt="screenshot"
src="https://github.com/elastic/kibana/assets/17747913/e3b4db3f-4d73-4890-af06-64c706317ff6">

---------

Co-authored-by: kibanamachine <[email protected]>
@dedemorton
Copy link
Contributor

We also need to understand exactly when these planned changes are going to be released so that we can have PRs ready to update the docs.

We lose customer trust when the steps don't match the UI.

@eokoneyo
Copy link
Contributor

Hello @eokoneyo, is it possible to have a follow-up to some PRs (#168562 & #168565) to align the current case and wording of Get Started (Observability) and Getting started (ES) to the correct label: Get started (both for the navs and the breadcrumb)? Security seems to have the correct case and wording already.
image

Hey @florent-leborgne , a PR has been opened to address the misalignment with the "Get started" in both observability and ES. I'll leave a line when it gets merged in.

eokoneyo added a commit that referenced this issue Oct 24, 2023
## Summary

This PR addresses
#166545 (comment)
by aligning the call to action text in Observability and Search
Serverless offering.

### Checklist

<!-- Delete any items that are not applicable to this PR. -->

- [x] Any text added follows [EUI's writing
guidelines](https://elastic.github.io/eui/#/guidelines/writing), uses
sentence case text and includes [i18n
support](https://github.com/elastic/kibana/blob/main/packages/kbn-i18n/README.md)

<!--
- [ ]
[Documentation](https://www.elastic.co/guide/en/kibana/master/development-documentation.html)
was added for features that require explanation or tutorials
- [ ] [Unit or functional
tests](https://www.elastic.co/guide/en/kibana/master/development-tests.html)
were updated or added to match the most common scenarios
- [ ] Any UI touched in this PR is usable by keyboard only (learn more
about [keyboard accessibility](https://webaim.org/techniques/keyboard/))
- [ ] Any UI touched in this PR does not create any new axe failures
(run axe in browser:
[FF](https://addons.mozilla.org/en-US/firefox/addon/axe-devtools/),
[Chrome](https://chrome.google.com/webstore/detail/axe-web-accessibility-tes/lhdoppojpmngadmnindnejefpokejbdd?hl=en-US))
- [ ] If a plugin configuration key changed, check if it needs to be
allowlisted in the cloud and added to the [docker
list](https://github.com/elastic/kibana/blob/main/src/dev/build/tasks/os_packages/docker_generator/resources/base/bin/kibana-docker)
- [ ] This renders correctly on smaller devices using a responsive
layout. (You can test this [in your
browser](https://www.browserstack.com/guide/responsive-testing-on-local-server))
- [ ] This was checked for [cross-browser
compatibility](https://www.elastic.co/support/matrix#matrix_browsers)


### Risk Matrix

Delete this section if it is not applicable to this PR.

Before closing this PR, invite QA, stakeholders, and other developers to
identify risks that should be tested prior to the change/feature
release.

When forming the risk matrix, consider some of the following examples
and how they may potentially impact the change:

| Risk | Probability | Severity | Mitigation/Notes |

|---------------------------|-------------|----------|-------------------------|
| Multiple Spaces&mdash;unexpected behavior in non-default Kibana Space.
| Low | High | Integration tests will verify that all features are still
supported in non-default Kibana Space and when user switches between
spaces. |
| Multiple nodes&mdash;Elasticsearch polling might have race conditions
when multiple Kibana nodes are polling for the same tasks. | High | Low
| Tasks are idempotent, so executing them multiple times will not result
in logical error, but will degrade performance. To test for this case we
add plenty of unit tests around this logic and document manual testing
procedure. |
| Code should gracefully handle cases when feature X or plugin Y are
disabled. | Medium | High | Unit tests will verify that any feature flag
or plugin combination still results in our service operational. |
| [See more potential risk
examples](https://github.com/elastic/kibana/blob/main/RISK_MATRIX.mdx) |


### For maintainers

- [ ] This was checked for breaking API changes and was [labeled
appropriately](https://www.elastic.co/guide/en/kibana/master/contributing.html#kibana-release-notes-process)
-->

---------

Co-authored-by: Sébastien Loix <[email protected]>
@florent-leborgne
Copy link
Contributor

@eokoneyo Thanks for the update :) And I just saw it has been merged. 🎉

@ryankeairns
Copy link
Contributor Author

The last open checklist item is for writing guidelines. These are drafted and feedback is being gathered. Reach out to me for the link; closing this issue. Thanks all!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Team:SharedUX Team label for AppEx-SharedUX (formerly Global Experience)
Projects
None yet
Development

No branches or pull requests

9 participants