[Security Solutions] Administration breadcrumbs shortened to be consistent with the rest (#103927) (#104059)

* Administration breadcrumbs shortened to bbe consistent with the rest

* remove comment

Co-authored-by: Sergi Massaneda <sergi.massaneda@elastic.co>
This commit is contained in:
Kibana Machine 2021-07-01 11:35:30 -04:00 committed by GitHub
parent 92667f5885
commit 4dccd26246
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
3 changed files with 9 additions and 32 deletions

View file

@ -13,6 +13,7 @@ import { RouteSpyState, SiemRouteType } from '../../../utils/route/types';
import { TabNavigationProps } from '../tab_navigation/types';
import { NetworkRouteType } from '../../../../network/pages/navigation/types';
import { TimelineTabs } from '../../../../../common/types/timeline';
import { AdministrationSubTab } from '../../../../management/types';
const setBreadcrumbsMock = jest.fn();
const chromeMock = {
@ -26,6 +27,8 @@ const mockDefaultTab = (pageName: string): SiemRouteType | undefined => {
return HostsTableType.authentications;
case 'network':
return NetworkRouteType.flows;
case 'administration':
return AdministrationSubTab.endpoints;
default:
return undefined;
}
@ -423,16 +426,16 @@ describe('Navigation Breadcrumbs', () => {
},
]);
});
test('should return Admin breadcrumbs when supplied admin pathname', () => {
test('should return Admin breadcrumbs when supplied endpoints pathname', () => {
const breadcrumbs = getBreadcrumbsForRoute(
getMockObject('administration', '/', undefined),
getMockObject('administration', '/endpoints', undefined),
getUrlForAppMock
);
expect(breadcrumbs).toEqual([
{ text: 'Security', href: 'securitySolution/overview' },
{
text: 'Administration',
href: 'securitySolution/endpoints',
text: 'Endpoints',
href: '',
},
]);
});

View file

@ -186,18 +186,7 @@ export const getBreadcrumbsForRoute = (
if (spyState.tabName != null) {
urlStateKeys = [...urlStateKeys, getOr(tempNav, spyState.tabName, object.navTabs)];
}
return [
siemRootBreadcrumb,
...getAdminBreadcrumbs(
spyState,
urlStateKeys.reduce(
(acc: string[], item: SearchNavTab) => [...acc, getSearch(item, object)],
[]
),
getUrlForApp
),
];
return [siemRootBreadcrumb, ...getAdminBreadcrumbs(spyState)];
}
if (

View file

@ -6,13 +6,9 @@
*/
import { ChromeBreadcrumb } from 'kibana/public';
import { isEmpty } from 'lodash/fp';
import { AdministrationSubTab } from '../types';
import { ENDPOINTS_TAB, EVENT_FILTERS_TAB, POLICIES_TAB, TRUSTED_APPS_TAB } from './translations';
import { AdministrationRouteSpyState } from '../../common/utils/route/types';
import { GetUrlForApp } from '../../common/components/navigation/types';
import { ADMINISTRATION } from '../../app/translations';
import { APP_ID, SecurityPageName } from '../../../common/constants';
const TabNameMappedToI18nKey: Record<AdministrationSubTab, string> = {
[AdministrationSubTab.endpoints]: ENDPOINTS_TAB,
@ -21,19 +17,8 @@ const TabNameMappedToI18nKey: Record<AdministrationSubTab, string> = {
[AdministrationSubTab.eventFilters]: EVENT_FILTERS_TAB,
};
export function getBreadcrumbs(
params: AdministrationRouteSpyState,
search: string[],
getUrlForApp: GetUrlForApp
): ChromeBreadcrumb[] {
export function getBreadcrumbs(params: AdministrationRouteSpyState): ChromeBreadcrumb[] {
return [
{
text: ADMINISTRATION,
href: getUrlForApp(APP_ID, {
deepLinkId: SecurityPageName.endpoints,
path: !isEmpty(search[0]) ? search[0] : '',
}),
},
...(params?.tabName ? [params?.tabName] : []).map((tabName) => ({
text: TabNameMappedToI18nKey[tabName],
href: '',