Skip to content

Commit be63380

Browse files
[9.2] [Security solution] update explore, entity analytics and assets icon for the navigation v2 (#239226) (#239250)
# Backport This will backport the following commits from `main` to `9.2`: - [[Security solution] update explore, entity analytics and assets icon for the navigation v2 (#239226)](#239226) <!--- Backport version: 9.6.6 --> ### Questions ? Please refer to the [Backport tool documentation](https://github.com/sorenlouv/backport) <!--BACKPORT [{"author":{"name":"Philippe Oberti","email":"[email protected]"},"sourceCommit":{"committedDate":"2025-10-16T00:35:51Z","message":"[Security solution] update explore, entity analytics and assets icon for the navigation v2 (#239226)\n\n## Summary\n\nThis PR makes 3 small changes to the following icon for the new\nnavigation:\n- for the Explore entry, we're now using `globe`\n- for the Entity Analytics entry, we're using a custom icon\n- for the Assets entry, we're using another custom icon\n\n| Before | After |\n| ------------- | ------------- |\n| <img width=\"362\" height=\"1029\" alt=\"Screenshot 2025-10-15 at 3 39\n42 PM\"\nsrc=\"https://github.com/user-attachments/assets/44247c19-be88-4c66-937d-678634371177\"\n/> | <img width=\"378\" height=\"1052\" alt=\"Screenshot 2025-10-15 at 3 12\n47 PM\"\nsrc=\"https://github.com/user-attachments/assets/c270e610-eb23-40dd-addb-1398ac2ed8fc\"\n/> |\n\n\nUpdate: here's how they look in dark theme\n<img width=\"350\" height=\"1048\" alt=\"Screenshot 2025-10-15 at 5 53 15 PM\"\nsrc=\"https://github.com/user-attachments/assets/9391056d-c669-41ba-a44a-eecc2df52688\"\n/>\n\nBig thanks to @ryankeairns for the help in fixing this!!\n\n### Checklist\n\n- [x] The PR description includes the appropriate Release Notes section,\nand the correct `release_note:*` label is applied per the\n[guidelines](https://www.elastic.co/guide/en/kibana/master/contributing.html#kibana-release-notes-process)\n- [x] Review the [backport\nguidelines](https://docs.google.com/document/d/1VyN5k91e5OVumlc0Gb9RPa3h1ewuPE705nRtioPiTvY/edit?usp=sharing)\nand apply applicable `backport:*` labels.","sha":"52903d1407e28c847bbfc174128c72cbe43f3bbc","branchLabelMapping":{"^v9.3.0$":"main","^v(\\d+).(\\d+).\\d+$":"$1.$2"}},"sourcePullRequest":{"labels":["release_note:skip","Team:Threat Hunting:Investigations","backport:version","v9.2.0","v9.3.0"],"title":"[Security solution] update explore, entity analytics and assets icon for the navigation v2","number":239226,"url":"https://github.com/elastic/kibana/pull/239226","mergeCommit":{"message":"[Security solution] update explore, entity analytics and assets icon for the navigation v2 (#239226)\n\n## Summary\n\nThis PR makes 3 small changes to the following icon for the new\nnavigation:\n- for the Explore entry, we're now using `globe`\n- for the Entity Analytics entry, we're using a custom icon\n- for the Assets entry, we're using another custom icon\n\n| Before | After |\n| ------------- | ------------- |\n| <img width=\"362\" height=\"1029\" alt=\"Screenshot 2025-10-15 at 3 39\n42 PM\"\nsrc=\"https://github.com/user-attachments/assets/44247c19-be88-4c66-937d-678634371177\"\n/> | <img width=\"378\" height=\"1052\" alt=\"Screenshot 2025-10-15 at 3 12\n47 PM\"\nsrc=\"https://github.com/user-attachments/assets/c270e610-eb23-40dd-addb-1398ac2ed8fc\"\n/> |\n\n\nUpdate: here's how they look in dark theme\n<img width=\"350\" height=\"1048\" alt=\"Screenshot 2025-10-15 at 5 53 15 PM\"\nsrc=\"https://github.com/user-attachments/assets/9391056d-c669-41ba-a44a-eecc2df52688\"\n/>\n\nBig thanks to @ryankeairns for the help in fixing this!!\n\n### Checklist\n\n- [x] The PR description includes the appropriate Release Notes section,\nand the correct `release_note:*` label is applied per the\n[guidelines](https://www.elastic.co/guide/en/kibana/master/contributing.html#kibana-release-notes-process)\n- [x] Review the [backport\nguidelines](https://docs.google.com/document/d/1VyN5k91e5OVumlc0Gb9RPa3h1ewuPE705nRtioPiTvY/edit?usp=sharing)\nand apply applicable `backport:*` labels.","sha":"52903d1407e28c847bbfc174128c72cbe43f3bbc"}},"sourceBranch":"main","suggestedTargetBranches":["9.2"],"targetPullRequestStates":[{"branch":"9.2","label":"v9.2.0","branchLabelMappingKey":"^v(\\d+).(\\d+).\\d+$","isSourceBranch":false,"state":"NOT_CREATED"},{"branch":"main","label":"v9.3.0","branchLabelMappingKey":"^v9.3.0$","isSourceBranch":true,"state":"MERGED","url":"https://github.com/elastic/kibana/pull/239226","number":239226,"mergeCommit":{"message":"[Security solution] update explore, entity analytics and assets icon for the navigation v2 (#239226)\n\n## Summary\n\nThis PR makes 3 small changes to the following icon for the new\nnavigation:\n- for the Explore entry, we're now using `globe`\n- for the Entity Analytics entry, we're using a custom icon\n- for the Assets entry, we're using another custom icon\n\n| Before | After |\n| ------------- | ------------- |\n| <img width=\"362\" height=\"1029\" alt=\"Screenshot 2025-10-15 at 3 39\n42 PM\"\nsrc=\"https://github.com/user-attachments/assets/44247c19-be88-4c66-937d-678634371177\"\n/> | <img width=\"378\" height=\"1052\" alt=\"Screenshot 2025-10-15 at 3 12\n47 PM\"\nsrc=\"https://github.com/user-attachments/assets/c270e610-eb23-40dd-addb-1398ac2ed8fc\"\n/> |\n\n\nUpdate: here's how they look in dark theme\n<img width=\"350\" height=\"1048\" alt=\"Screenshot 2025-10-15 at 5 53 15 PM\"\nsrc=\"https://github.com/user-attachments/assets/9391056d-c669-41ba-a44a-eecc2df52688\"\n/>\n\nBig thanks to @ryankeairns for the help in fixing this!!\n\n### Checklist\n\n- [x] The PR description includes the appropriate Release Notes section,\nand the correct `release_note:*` label is applied per the\n[guidelines](https://www.elastic.co/guide/en/kibana/master/contributing.html#kibana-release-notes-process)\n- [x] Review the [backport\nguidelines](https://docs.google.com/document/d/1VyN5k91e5OVumlc0Gb9RPa3h1ewuPE705nRtioPiTvY/edit?usp=sharing)\nand apply applicable `backport:*` labels.","sha":"52903d1407e28c847bbfc174128c72cbe43f3bbc"}}]}] BACKPORT--> Co-authored-by: Philippe Oberti <[email protected]>
1 parent c25b2ae commit be63380

File tree

5 files changed

+60
-6
lines changed

5 files changed

+60
-6
lines changed

x-pack/solutions/security/packages/navigation/src/navigation_tree/assets_navigation_tree.ts

Lines changed: 7 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -7,20 +7,25 @@
77

88
import type { CoreStart } from '@kbn/core/public';
99
import type { NodeDefinition } from '@kbn/core-chrome-browser';
10-
import { SecurityPageName, SecurityGroupName } from '../constants';
10+
import { lazy } from 'react';
11+
import { SecurityGroupName, SecurityPageName } from '../constants';
1112
import { SecurityLinkGroup } from '../link_groups';
1213
import { securityLink } from '../links';
1314
import { i18nStrings } from '../i18n_strings';
1415
import { renderIntegrationsLinkCallout } from './integrations_link_callout';
1516

17+
const LazyIconAssets = lazy(() =>
18+
import('./v2_icons/assets').then(({ iconAssets }) => ({ default: iconAssets }))
19+
);
20+
1621
export const createAssetsNavigationTree = (
1722
core: CoreStart,
1823
{ sideNavVersion }: { sideNavVersion?: NodeDefinition['sideNavVersion'] } = {
1924
sideNavVersion: 'v1',
2025
}
2126
): NodeDefinition => ({
2227
id: SecurityGroupName.assets,
23-
iconV2: 'folderClosed',
28+
iconV2: LazyIconAssets,
2429
title: SecurityLinkGroup[SecurityGroupName.assets].title,
2530
renderAs: 'panelOpener',
2631
sideNavVersion,

x-pack/solutions/security/packages/navigation/src/navigation_tree/entity_analytics_navigation_tree.ts

Lines changed: 9 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -6,17 +6,24 @@
66
*/
77

88
import type { NodeDefinition } from '@kbn/core-chrome-browser';
9-
import { SecurityPageName, SecurityGroupName } from '../constants';
9+
import { lazy } from 'react';
10+
import { SecurityGroupName, SecurityPageName } from '../constants';
1011
import { SecurityLinkGroup } from '../link_groups';
1112
import { securityLink } from '../links';
1213

14+
const LazyIconEntityAnalytics = lazy(() =>
15+
import('./v2_icons/entity_analytics').then(({ iconEntityAnalytics }) => ({
16+
default: iconEntityAnalytics,
17+
}))
18+
);
19+
1320
export const createEntityAnalyticsNavigationTree = (
1421
{ sideNavVersion }: { sideNavVersion?: NodeDefinition['sideNavVersion'] } = {
1522
sideNavVersion: 'v1',
1623
}
1724
): NodeDefinition => ({
1825
id: SecurityGroupName.entityAnalytics,
19-
iconV2: 'anomalyChart',
26+
iconV2: LazyIconEntityAnalytics,
2027
title: SecurityLinkGroup[SecurityGroupName.entityAnalytics].title,
2128
renderAs: 'panelOpener',
2229
sideNavVersion,

x-pack/solutions/security/packages/navigation/src/navigation_tree/explore_navigation_tree.ts

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,7 @@
66
*/
77

88
import type { NodeDefinition } from '@kbn/core-chrome-browser';
9-
import { SecurityPageName, SecurityGroupName } from '../constants';
9+
import { SecurityGroupName, SecurityPageName } from '../constants';
1010
import { SecurityLinkGroup } from '../link_groups';
1111
import { securityLink } from '../links';
1212

@@ -18,7 +18,7 @@ export const createExploreNavigationTree = (
1818
id: SecurityGroupName.explore,
1919
title: SecurityLinkGroup[SecurityGroupName.explore].title,
2020
renderAs: 'panelOpener',
21-
iconV2: 'aggregate',
21+
iconV2: 'globe',
2222
sideNavVersion,
2323
children: [
2424
{
Lines changed: 21 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,21 @@
1+
/*
2+
* Copyright Elasticsearch B.V. and/or licensed to Elasticsearch B.V. under one
3+
* or more contributor license agreements. Licensed under the Elastic License
4+
* 2.0; you may not use this file except in compliance with the Elastic License
5+
* 2.0.
6+
*/
7+
8+
import type { EuiIconProps } from '@elastic/eui';
9+
import { EuiIcon } from '@elastic/eui';
10+
import type { SVGProps } from 'react';
11+
import React from 'react';
12+
13+
const iconType: React.FC<SVGProps<SVGSVGElement>> = (props) => (
14+
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 16 16" {...props}>
15+
<path d="M13 9H3V10H13V9ZM7 13H9V11H7V13ZM3 3V8H13V3H3ZM14 10C14 10.5523 13.5523 11 13 11H10V13H12V14H4V13H6V11H3C2.44772 11 2 10.5523 2 10V3C2 2.44772 2.44772 2 3 2H13C13.5523 2 14 2.44772 14 3V10Z" />
16+
</svg>
17+
);
18+
19+
export const iconAssets = ({ size = 'm', ...rest }: Omit<EuiIconProps, 'type'>) => {
20+
return <EuiIcon {...{ type: iconType, size, ...rest }} />;
21+
};
Lines changed: 21 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,21 @@
1+
/*
2+
* Copyright Elasticsearch B.V. and/or licensed to Elasticsearch B.V. under one
3+
* or more contributor license agreements. Licensed under the Elastic License
4+
* 2.0; you may not use this file except in compliance with the Elastic License
5+
* 2.0.
6+
*/
7+
8+
import type { EuiIconProps } from '@elastic/eui';
9+
import { EuiIcon } from '@elastic/eui';
10+
import type { SVGProps } from 'react';
11+
import React from 'react';
12+
13+
const iconType: React.FC<SVGProps<SVGSVGElement>> = (props) => (
14+
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 16 16" {...props}>
15+
<path d="M1 14V1H2V14H15V15H2C1.44772 15 1 14.5523 1 14ZM5 11H4V12H5V11ZM9 9H8V12H9V9ZM13 7H12V12H13V7ZM4 8V10H5V8H4ZM8 6V8H9V6H8ZM12 4V6H13V4H12ZM6 12C6 12.5523 5.55228 13 5 13H4C3.44772 13 3 12.5523 3 12V8C3 7.44772 3.44772 7 4 7H5C5.55228 7 6 7.44772 6 8V12ZM10 12C10 12.5523 9.55228 13 9 13H8C7.44772 13 7 12.5523 7 12V6C7 5.44772 7.44772 5 8 5H9C9.55228 5 10 5.44772 10 6V12ZM14 12C14 12.5523 13.5523 13 13 13H12C11.4477 13 11 12.5523 11 12V4C11 3.44772 11.4477 3 12 3H13C13.5523 3 14 3.44772 14 4V12Z" />
16+
</svg>
17+
);
18+
19+
export const iconEntityAnalytics = ({ size = 'm', ...rest }: Omit<EuiIconProps, 'type'>) => {
20+
return <EuiIcon {...{ type: iconType, size, ...rest }} />;
21+
};

0 commit comments

Comments
 (0)