-
Notifications
You must be signed in to change notification settings - Fork 8.3k
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
[Security Solution][Expandable flyout] Introducing Flyout history in document flyout #184970
Conversation
f4006ac
to
270e441
Compare
/ci |
/ci |
💔 Build FailedFailed CI Steps
Test Failures
Metrics [docs]Module Count
Public APIs missing comments
Async chunks
History
To update your PR or re-run it, just comment with: |
8fc3b2d
to
f5fb866
Compare
f5fb866
to
8cef7f7
Compare
8cef7f7
to
1481cf3
Compare
1481cf3
to
728b17f
Compare
/ci |
Files by Code Ownerelastic/security-entity-analytics
elastic/security-threat-hunting-investigationsRest |
Pinging @elastic/security-threat-hunting (Team:Threat Hunting) |
Pinging @elastic/security-threat-hunting-investigations (Team:Threat Hunting:Investigations) |
728b17f
to
cf2afcf
Compare
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 work is awesome! I left a few comments, some of them are very minor, some could require some discussion...
I did some desk testing and everything looked good, except at some point I got a weird behavior where I had both the security solution flyout and the timeline flyout opened at the same time, and making changes to the timeline flyout was adding entries to the history array of the security solution flyout... Really weird!
When I tried to make a recording, I refreshed the page then couldn't reproduce this again...
x-pack/plugins/security_solution/public/flyout/document_details/shared/utils.tsx
Outdated
Show resolved
Hide resolved
x-pack/plugins/security_solution/public/flyout/document_details/shared/utils.tsx
Show resolved
Hide resolved
x-pack/plugins/security_solution/public/flyout/document_details/shared/utils.test.tsx
Outdated
Show resolved
Hide resolved
x-pack/plugins/security_solution/public/flyout/document_details/shared/utils.test.tsx
Outdated
Show resolved
Hide resolved
.../plugins/security_solution/public/timelines/components/timeline/body/renderers/host_name.tsx
Show resolved
Hide resolved
.../plugins/security_solution/public/timelines/components/timeline/body/renderers/user_name.tsx
Show resolved
Hide resolved
x-pack/plugins/security_solution/public/flyout/shared/components/flyout_history_row.test.tsx
Outdated
Show resolved
Hide resolved
x-pack/plugins/security_solution/public/flyout/shared/components/flyout_history_row.tsx
Outdated
Show resolved
Hide resolved
x-pack/plugins/security_solution/public/flyout/shared/components/flyout_history_row.tsx
Show resolved
Hide resolved
9307ef7
to
623673b
Compare
623673b
to
e19c913
Compare
x-pack/plugins/security_solution/common/experimental_features.ts
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 making all the changes, this looks great! Everything LGTM I tested again locally and couldn't find any issues!
I have a few ideas of further UI improvements, we can discuss them and log them into a ticket!
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.
EA code changes LGTM!
Thank you!
Starting backport for target branches: 8.x https://github.com/elastic/kibana/actions/runs/12265233946 |
💛 Build succeeded, but was flaky
Failed CI StepsTest FailuresMetrics [docs]Module Count
Public APIs missing comments
Async chunks
Page load bundle
History
|
💔 All backports failed
Manual backportTo create the backport manually run:
Questions ?Please refer to the Backport tool documentation |
💚 All backports created successfully
Note: Successful backport PRs will be merged automatically after passing CI. Questions ?Please refer to the Backport tool documentation |
…document flyout (elastic#184970) ## Summary This PR introduced flyout history in expandable flyouts to keep tracked of previously opened flyouts. The history button is available when feature flag `newExpandableFlyoutNavigationEnabled` is enabled. Flag is currently default `False` ### Changes in [kbn-expandable-flyout](https://github.com/elastic/kibana/tree/main/packages/kbn-expandable-flyout) package - When `openFlyout` is called, the **right** panel will be appended to the `history` slice in redux. - History can be accessed via `useExpandableFlyoutHistory` API ![image](https://github.com/user-attachments/assets/081d6d6f-3c10-40f0-8882-73bc8c275e68) ### Changes to expandable flyouts in security solution - When feature flag is on, opening more than 1 flyout will show a history icon. Currently max at 10 entries - When user clicks a flyout from the history, it does not add on top on history, instead the position will be moved up. There is no duplicate entries. ![image](https://github.com/user-attachments/assets/3bc68519-5eea-4fb7-9386-f6688b28b525) **To illustrate how ordering works:** -> History: [host1, user1, alert1] -> clicks alert1 -> History: [alert1, host1, user1] Keep in mind this is slightly different in the actual implementation, as we do not display the current entry (i.e. alert1 in this example) ### Other changes in order to support flyout history - Added a preview panel for network. Previously we reused the panel for both network flyout and network preview. A dedicated network preview with out history is now available - Replaced `openRightPanel` with `openFlyout` in applicable places - Added `isPreview` and `isPreviewMode` checks in EA flyouts ## How to test - Enable feature flag `newExpandableFlyoutNavigationEnabled` <details> <summary>✅ Alerts page</summary> Available for alert, host, user, rule name and ip's <img src="https://github.com/user-attachments/assets/e74a6444-763f-4e18-8370-f6c0c83e0d4c" /> </details> <details> <summary>✅ Explore pages (event table)</summary> Available for events, host, user, rule name and ip's <img src="https://github.com/user-attachments/assets/d2b9f0b9-a788-4174-bc80-8ac9c51fb16a" /> </details> <details> <summary>✅ Cases</summary> Note: the rule and entity link still go to a page, this will be addressed in a separate PR <img src="https://github.com/user-attachments/assets/fa7a5c86-d1e3-4dad-80ed-405c52efc486" /> </details> <details> <summary>✅ Discover in severless</summary> - enable `discover.experimental.enabledProfiles: ['security-root-profile']` <img src="https://github.com/user-attachments/assets/ebd5de5d-1ed3-42ad-bb6f-1beccdc48e62" /> </details> <details> <summary>❌ Disabled in alert preview </summary> <img src="https://github.com/user-attachments/assets/53e82ded-0db8-4639-afa1-c5cf224cf193" /> </details> <details> <summary>❌ Disabled in preview mode </summary> <img src="https://github.com/user-attachments/assets/a12b741f-2558-4fb5-852f-282af6e10f93" /> </details> ## WIP - [x] Investigate performance with process history - [ ] Final ui of the entries - pending UIUX team ### Checklist - [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) - [x] [Documentation](https://www.elastic.co/guide/en/kibana/master/development-documentation.html) was added for features that require explanation or tutorials - [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 (cherry picked from commit 5b6887d) # Conflicts: # x-pack/plugins/security_solution/public/timelines/components/timeline/body/renderers/host_name.test.tsx # x-pack/plugins/security_solution/public/timelines/components/timeline/body/renderers/user_name.test.tsx
…ry in document flyout (#184970) (#203702) # Backport This will backport the following commits from `main` to `8.x`: - [[Security Solution][Expandable flyout] Introducing Flyout history in document flyout (#184970)](#184970) <!--- Backport version: 8.9.8 --> ### Questions ? Please refer to the [Backport tool documentation](https://github.com/sqren/backport) <!--BACKPORT [{"author":{"name":"christineweng","email":"[email protected]"},"sourceCommit":{"committedDate":"2024-12-10T21:43:28Z","message":"[Security Solution][Expandable flyout] Introducing Flyout history in document flyout (#184970)\n\n## Summary\r\n\r\nThis PR introduced flyout history in expandable flyouts to keep tracked\r\nof previously opened flyouts. The history button is available when\r\nfeature flag `newExpandableFlyoutNavigationEnabled` is enabled.\r\n\r\nFlag is currently default `False` \r\n\r\n### Changes in\r\n[kbn-expandable-flyout](https://github.com/elastic/kibana/tree/main/packages/kbn-expandable-flyout)\r\npackage\r\n\r\n- When `openFlyout` is called, the **right** panel will be appended to\r\nthe `history` slice in redux.\r\n- History can be accessed via `useExpandableFlyoutHistory` API\r\n\r\n\r\n![image](https://github.com/user-attachments/assets/081d6d6f-3c10-40f0-8882-73bc8c275e68)\r\n\r\n\r\n### Changes to expandable flyouts in security solution\r\n\r\n- When feature flag is on, opening more than 1 flyout will show a\r\nhistory icon. Currently max at 10 entries\r\n- When user clicks a flyout from the history, it does not add on top on\r\nhistory, instead the position will be moved up. There is no duplicate\r\nentries.\r\n\r\n\r\n![image](https://github.com/user-attachments/assets/3bc68519-5eea-4fb7-9386-f6688b28b525)\r\n\r\n**To illustrate how ordering works:**\r\n-> History: [host1, user1, alert1]\r\n-> clicks alert1 \r\n-> History: [alert1, host1, user1] \r\nKeep in mind this is slightly different in the actual implementation, as\r\nwe do not display the current entry (i.e. alert1 in this example)\r\n\r\n### Other changes in order to support flyout history\r\n- Added a preview panel for network. Previously we reused the panel for\r\nboth network flyout and network preview. A dedicated network preview\r\nwith out history is now available\r\n- Replaced `openRightPanel` with `openFlyout` in applicable places\r\n- Added `isPreview` and `isPreviewMode` checks in EA flyouts\r\n\r\n## How to test\r\n- Enable feature flag `newExpandableFlyoutNavigationEnabled`\r\n\r\n<details>\r\n<summary>✅ Alerts page</summary>\r\nAvailable for alert, host, user, rule name and ip's\r\n<img\r\nsrc=\"https://github.com/user-attachments/assets/e74a6444-763f-4e18-8370-f6c0c83e0d4c\"\r\n/>\r\n</details>\r\n\r\n<details>\r\n<summary>✅ Explore pages (event table)</summary>\r\nAvailable for events, host, user, rule name and ip's\r\n<img\r\nsrc=\"https://github.com/user-attachments/assets/d2b9f0b9-a788-4174-bc80-8ac9c51fb16a\"\r\n/>\r\n</details>\r\n\r\n<details>\r\n<summary>✅ Cases</summary>\r\nNote: the rule and entity link still go to a page, this will be\r\naddressed in a separate PR\r\n<img\r\nsrc=\"https://github.com/user-attachments/assets/fa7a5c86-d1e3-4dad-80ed-405c52efc486\"\r\n/>\r\n</details>\r\n\r\n\r\n<details>\r\n<summary>✅ Discover in severless</summary>\r\n- enable `discover.experimental.enabledProfiles:\r\n['security-root-profile']`\r\n<img\r\nsrc=\"https://github.com/user-attachments/assets/ebd5de5d-1ed3-42ad-bb6f-1beccdc48e62\"\r\n/>\r\n</details>\r\n\r\n<details>\r\n<summary>❌ Disabled in alert preview </summary>\r\n<img\r\nsrc=\"https://github.com/user-attachments/assets/53e82ded-0db8-4639-afa1-c5cf224cf193\"\r\n/>\r\n</details>\r\n\r\n<details>\r\n<summary>❌ Disabled in preview mode </summary>\r\n<img\r\nsrc=\"https://github.com/user-attachments/assets/a12b741f-2558-4fb5-852f-282af6e10f93\"\r\n/>\r\n</details>\r\n\r\n\r\n## WIP\r\n- [x] Investigate performance with process history\r\n- [ ] Final ui of the entries - pending UIUX team\r\n\r\n\r\n### Checklist\r\n\r\n- [x] Any text added follows [EUI's writing\r\nguidelines](https://elastic.github.io/eui/#/guidelines/writing), uses\r\nsentence case text and includes [i18n\r\nsupport](https://github.com/elastic/kibana/blob/main/packages/kbn-i18n/README.md)\r\n- [x]\r\n[Documentation](https://www.elastic.co/guide/en/kibana/master/development-documentation.html)\r\nwas added for features that require explanation or tutorials\r\n- [x] [Unit or functional\r\ntests](https://www.elastic.co/guide/en/kibana/master/development-tests.html)\r\nwere updated or added to match the most common scenarios","sha":"5b6887dd3df7e92dce72bf58ff80e999d501a721","branchLabelMapping":{"^v9.0.0$":"main","^v8.18.0$":"8.x","^v(\\d+).(\\d+).\\d+$":"$1.$2"}},"sourcePullRequest":{"labels":["backport","v9.0.0","Team:Threat Hunting","release_note:feature","Team:Threat Hunting:Investigations","v8.18.0"],"number":184970,"url":"https://github.com/elastic/kibana/pull/184970","mergeCommit":{"message":"[Security Solution][Expandable flyout] Introducing Flyout history in document flyout (#184970)\n\n## Summary\r\n\r\nThis PR introduced flyout history in expandable flyouts to keep tracked\r\nof previously opened flyouts. The history button is available when\r\nfeature flag `newExpandableFlyoutNavigationEnabled` is enabled.\r\n\r\nFlag is currently default `False` \r\n\r\n### Changes in\r\n[kbn-expandable-flyout](https://github.com/elastic/kibana/tree/main/packages/kbn-expandable-flyout)\r\npackage\r\n\r\n- When `openFlyout` is called, the **right** panel will be appended to\r\nthe `history` slice in redux.\r\n- History can be accessed via `useExpandableFlyoutHistory` API\r\n\r\n\r\n![image](https://github.com/user-attachments/assets/081d6d6f-3c10-40f0-8882-73bc8c275e68)\r\n\r\n\r\n### Changes to expandable flyouts in security solution\r\n\r\n- When feature flag is on, opening more than 1 flyout will show a\r\nhistory icon. Currently max at 10 entries\r\n- When user clicks a flyout from the history, it does not add on top on\r\nhistory, instead the position will be moved up. There is no duplicate\r\nentries.\r\n\r\n\r\n![image](https://github.com/user-attachments/assets/3bc68519-5eea-4fb7-9386-f6688b28b525)\r\n\r\n**To illustrate how ordering works:**\r\n-> History: [host1, user1, alert1]\r\n-> clicks alert1 \r\n-> History: [alert1, host1, user1] \r\nKeep in mind this is slightly different in the actual implementation, as\r\nwe do not display the current entry (i.e. alert1 in this example)\r\n\r\n### Other changes in order to support flyout history\r\n- Added a preview panel for network. Previously we reused the panel for\r\nboth network flyout and network preview. A dedicated network preview\r\nwith out history is now available\r\n- Replaced `openRightPanel` with `openFlyout` in applicable places\r\n- Added `isPreview` and `isPreviewMode` checks in EA flyouts\r\n\r\n## How to test\r\n- Enable feature flag `newExpandableFlyoutNavigationEnabled`\r\n\r\n<details>\r\n<summary>✅ Alerts page</summary>\r\nAvailable for alert, host, user, rule name and ip's\r\n<img\r\nsrc=\"https://github.com/user-attachments/assets/e74a6444-763f-4e18-8370-f6c0c83e0d4c\"\r\n/>\r\n</details>\r\n\r\n<details>\r\n<summary>✅ Explore pages (event table)</summary>\r\nAvailable for events, host, user, rule name and ip's\r\n<img\r\nsrc=\"https://github.com/user-attachments/assets/d2b9f0b9-a788-4174-bc80-8ac9c51fb16a\"\r\n/>\r\n</details>\r\n\r\n<details>\r\n<summary>✅ Cases</summary>\r\nNote: the rule and entity link still go to a page, this will be\r\naddressed in a separate PR\r\n<img\r\nsrc=\"https://github.com/user-attachments/assets/fa7a5c86-d1e3-4dad-80ed-405c52efc486\"\r\n/>\r\n</details>\r\n\r\n\r\n<details>\r\n<summary>✅ Discover in severless</summary>\r\n- enable `discover.experimental.enabledProfiles:\r\n['security-root-profile']`\r\n<img\r\nsrc=\"https://github.com/user-attachments/assets/ebd5de5d-1ed3-42ad-bb6f-1beccdc48e62\"\r\n/>\r\n</details>\r\n\r\n<details>\r\n<summary>❌ Disabled in alert preview </summary>\r\n<img\r\nsrc=\"https://github.com/user-attachments/assets/53e82ded-0db8-4639-afa1-c5cf224cf193\"\r\n/>\r\n</details>\r\n\r\n<details>\r\n<summary>❌ Disabled in preview mode </summary>\r\n<img\r\nsrc=\"https://github.com/user-attachments/assets/a12b741f-2558-4fb5-852f-282af6e10f93\"\r\n/>\r\n</details>\r\n\r\n\r\n## WIP\r\n- [x] Investigate performance with process history\r\n- [ ] Final ui of the entries - pending UIUX team\r\n\r\n\r\n### Checklist\r\n\r\n- [x] Any text added follows [EUI's writing\r\nguidelines](https://elastic.github.io/eui/#/guidelines/writing), uses\r\nsentence case text and includes [i18n\r\nsupport](https://github.com/elastic/kibana/blob/main/packages/kbn-i18n/README.md)\r\n- [x]\r\n[Documentation](https://www.elastic.co/guide/en/kibana/master/development-documentation.html)\r\nwas added for features that require explanation or tutorials\r\n- [x] [Unit or functional\r\ntests](https://www.elastic.co/guide/en/kibana/master/development-tests.html)\r\nwere updated or added to match the most common scenarios","sha":"5b6887dd3df7e92dce72bf58ff80e999d501a721"}},"sourceBranch":"main","suggestedTargetBranches":["8.x"],"targetPullRequestStates":[{"branch":"main","label":"v9.0.0","labelRegex":"^v9.0.0$","isSourceBranch":true,"state":"MERGED","url":"https://github.com/elastic/kibana/pull/184970","number":184970,"mergeCommit":{"message":"[Security Solution][Expandable flyout] Introducing Flyout history in document flyout (#184970)\n\n## Summary\r\n\r\nThis PR introduced flyout history in expandable flyouts to keep tracked\r\nof previously opened flyouts. The history button is available when\r\nfeature flag `newExpandableFlyoutNavigationEnabled` is enabled.\r\n\r\nFlag is currently default `False` \r\n\r\n### Changes in\r\n[kbn-expandable-flyout](https://github.com/elastic/kibana/tree/main/packages/kbn-expandable-flyout)\r\npackage\r\n\r\n- When `openFlyout` is called, the **right** panel will be appended to\r\nthe `history` slice in redux.\r\n- History can be accessed via `useExpandableFlyoutHistory` API\r\n\r\n\r\n![image](https://github.com/user-attachments/assets/081d6d6f-3c10-40f0-8882-73bc8c275e68)\r\n\r\n\r\n### Changes to expandable flyouts in security solution\r\n\r\n- When feature flag is on, opening more than 1 flyout will show a\r\nhistory icon. Currently max at 10 entries\r\n- When user clicks a flyout from the history, it does not add on top on\r\nhistory, instead the position will be moved up. There is no duplicate\r\nentries.\r\n\r\n\r\n![image](https://github.com/user-attachments/assets/3bc68519-5eea-4fb7-9386-f6688b28b525)\r\n\r\n**To illustrate how ordering works:**\r\n-> History: [host1, user1, alert1]\r\n-> clicks alert1 \r\n-> History: [alert1, host1, user1] \r\nKeep in mind this is slightly different in the actual implementation, as\r\nwe do not display the current entry (i.e. alert1 in this example)\r\n\r\n### Other changes in order to support flyout history\r\n- Added a preview panel for network. Previously we reused the panel for\r\nboth network flyout and network preview. A dedicated network preview\r\nwith out history is now available\r\n- Replaced `openRightPanel` with `openFlyout` in applicable places\r\n- Added `isPreview` and `isPreviewMode` checks in EA flyouts\r\n\r\n## How to test\r\n- Enable feature flag `newExpandableFlyoutNavigationEnabled`\r\n\r\n<details>\r\n<summary>✅ Alerts page</summary>\r\nAvailable for alert, host, user, rule name and ip's\r\n<img\r\nsrc=\"https://github.com/user-attachments/assets/e74a6444-763f-4e18-8370-f6c0c83e0d4c\"\r\n/>\r\n</details>\r\n\r\n<details>\r\n<summary>✅ Explore pages (event table)</summary>\r\nAvailable for events, host, user, rule name and ip's\r\n<img\r\nsrc=\"https://github.com/user-attachments/assets/d2b9f0b9-a788-4174-bc80-8ac9c51fb16a\"\r\n/>\r\n</details>\r\n\r\n<details>\r\n<summary>✅ Cases</summary>\r\nNote: the rule and entity link still go to a page, this will be\r\naddressed in a separate PR\r\n<img\r\nsrc=\"https://github.com/user-attachments/assets/fa7a5c86-d1e3-4dad-80ed-405c52efc486\"\r\n/>\r\n</details>\r\n\r\n\r\n<details>\r\n<summary>✅ Discover in severless</summary>\r\n- enable `discover.experimental.enabledProfiles:\r\n['security-root-profile']`\r\n<img\r\nsrc=\"https://github.com/user-attachments/assets/ebd5de5d-1ed3-42ad-bb6f-1beccdc48e62\"\r\n/>\r\n</details>\r\n\r\n<details>\r\n<summary>❌ Disabled in alert preview </summary>\r\n<img\r\nsrc=\"https://github.com/user-attachments/assets/53e82ded-0db8-4639-afa1-c5cf224cf193\"\r\n/>\r\n</details>\r\n\r\n<details>\r\n<summary>❌ Disabled in preview mode </summary>\r\n<img\r\nsrc=\"https://github.com/user-attachments/assets/a12b741f-2558-4fb5-852f-282af6e10f93\"\r\n/>\r\n</details>\r\n\r\n\r\n## WIP\r\n- [x] Investigate performance with process history\r\n- [ ] Final ui of the entries - pending UIUX team\r\n\r\n\r\n### Checklist\r\n\r\n- [x] Any text added follows [EUI's writing\r\nguidelines](https://elastic.github.io/eui/#/guidelines/writing), uses\r\nsentence case text and includes [i18n\r\nsupport](https://github.com/elastic/kibana/blob/main/packages/kbn-i18n/README.md)\r\n- [x]\r\n[Documentation](https://www.elastic.co/guide/en/kibana/master/development-documentation.html)\r\nwas added for features that require explanation or tutorials\r\n- [x] [Unit or functional\r\ntests](https://www.elastic.co/guide/en/kibana/master/development-tests.html)\r\nwere updated or added to match the most common scenarios","sha":"5b6887dd3df7e92dce72bf58ff80e999d501a721"}},{"branch":"8.x","label":"v8.18.0","labelRegex":"^v8.18.0$","isSourceBranch":false,"state":"NOT_CREATED"}]}] BACKPORT-->
…document flyout (elastic#184970) ## Summary This PR introduced flyout history in expandable flyouts to keep tracked of previously opened flyouts. The history button is available when feature flag `newExpandableFlyoutNavigationEnabled` is enabled. Flag is currently default `False` ### Changes in [kbn-expandable-flyout](https://github.com/elastic/kibana/tree/main/packages/kbn-expandable-flyout) package - When `openFlyout` is called, the **right** panel will be appended to the `history` slice in redux. - History can be accessed via `useExpandableFlyoutHistory` API ![image](https://github.com/user-attachments/assets/081d6d6f-3c10-40f0-8882-73bc8c275e68) ### Changes to expandable flyouts in security solution - When feature flag is on, opening more than 1 flyout will show a history icon. Currently max at 10 entries - When user clicks a flyout from the history, it does not add on top on history, instead the position will be moved up. There is no duplicate entries. ![image](https://github.com/user-attachments/assets/3bc68519-5eea-4fb7-9386-f6688b28b525) **To illustrate how ordering works:** -> History: [host1, user1, alert1] -> clicks alert1 -> History: [alert1, host1, user1] Keep in mind this is slightly different in the actual implementation, as we do not display the current entry (i.e. alert1 in this example) ### Other changes in order to support flyout history - Added a preview panel for network. Previously we reused the panel for both network flyout and network preview. A dedicated network preview with out history is now available - Replaced `openRightPanel` with `openFlyout` in applicable places - Added `isPreview` and `isPreviewMode` checks in EA flyouts ## How to test - Enable feature flag `newExpandableFlyoutNavigationEnabled` <details> <summary>✅ Alerts page</summary> Available for alert, host, user, rule name and ip's <img src="https://github.com/user-attachments/assets/e74a6444-763f-4e18-8370-f6c0c83e0d4c" /> </details> <details> <summary>✅ Explore pages (event table)</summary> Available for events, host, user, rule name and ip's <img src="https://github.com/user-attachments/assets/d2b9f0b9-a788-4174-bc80-8ac9c51fb16a" /> </details> <details> <summary>✅ Cases</summary> Note: the rule and entity link still go to a page, this will be addressed in a separate PR <img src="https://github.com/user-attachments/assets/fa7a5c86-d1e3-4dad-80ed-405c52efc486" /> </details> <details> <summary>✅ Discover in severless</summary> - enable `discover.experimental.enabledProfiles: ['security-root-profile']` <img src="https://github.com/user-attachments/assets/ebd5de5d-1ed3-42ad-bb6f-1beccdc48e62" /> </details> <details> <summary>❌ Disabled in alert preview </summary> <img src="https://github.com/user-attachments/assets/53e82ded-0db8-4639-afa1-c5cf224cf193" /> </details> <details> <summary>❌ Disabled in preview mode </summary> <img src="https://github.com/user-attachments/assets/a12b741f-2558-4fb5-852f-282af6e10f93" /> </details> ## WIP - [x] Investigate performance with process history - [ ] Final ui of the entries - pending UIUX team ### Checklist - [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) - [x] [Documentation](https://www.elastic.co/guide/en/kibana/master/development-documentation.html) was added for features that require explanation or tutorials - [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
Summary
This PR introduced flyout history in expandable flyouts to keep tracked of previously opened flyouts. The history button is available when feature flag
newExpandableFlyoutNavigationEnabled
is enabled.Flag is currently default
False
Changes in kbn-expandable-flyout package
openFlyout
is called, the right panel will be appended to thehistory
slice in redux.useExpandableFlyoutHistory
APIChanges to expandable flyouts in security solution
To illustrate how ordering works:
-> History: [host1, user1, alert1]
-> clicks alert1
-> History: [alert1, host1, user1]
Keep in mind this is slightly different in the actual implementation, as we do not display the current entry (i.e. alert1 in this example)
Other changes in order to support flyout history
openRightPanel
withopenFlyout
in applicable placesisPreview
andisPreviewMode
checks in EA flyoutsHow to test
newExpandableFlyoutNavigationEnabled
✅ Alerts page
Available for alert, host, user, rule name and ip's✅ Explore pages (event table)
Available for events, host, user, rule name and ip's✅ Cases
Note: the rule and entity link still go to a page, this will be addressed in a separate PR✅ Discover in severless
- enable `discover.experimental.enabledProfiles: ['security-root-profile']`❌ Disabled in alert preview
❌ Disabled in preview mode
WIP
Checklist