1
0
mirror of https://github.com/Unleash/unleash.git synced 2024-10-18 20:09:08 +02:00
unleash.unleash/frontend/src/component/common/BreadcrumbNav/BreadcrumbNav.tsx
Fredrik Strand Oseberg 1a63d91f95 Feat/new navigation (#314)
* feat: change color scheme

* feat: add navigation menu

* fix: add bg image

* fix: add archive and strategies to navigation

* fix: round corners

* feat: mobile view project details

* feat: mobile view navigation

* fix: only show menu if user is admin

* fix: rename navigation

* fix: only render relevant routes for oss context

* feat: add project actions

* feat: add icons

* feat: add breadcrumbs

* fix: place breadcrumbs absolutely

* fix: adjust breadcrumbs

* fix: toast

* fix: cleanup

* fix login

* fix: breadcrumbs

* fix: add billing link

* fix: links

* fix: feature view

* fix: path to go back

* fix: remove default value

* fix: remove unused imports

* refactor: delete outdated test

* fix: add item to filter in breadcrumb

* fix: remove console log
2021-07-16 15:41:54 +02:00

55 lines
1.7 KiB
TypeScript

import Breadcrumbs from '@material-ui/core/Breadcrumbs';
import { Link, useLocation } from 'react-router-dom';
import ConditionallyRender from '../ConditionallyRender';
import { useStyles } from './BreadcrumbNav.styles';
const BreadcrumbNav = () => {
const styles = useStyles();
const location = useLocation();
const paths = location.pathname
.split('/')
.filter(item => item)
.filter(
item =>
item !== 'create' &&
item !== 'edit' &&
item !== 'access' &&
item !== 'view' &&
item !== 'variants' &&
item !== 'logs' &&
item !== 'metrics' &&
item !== 'copy'
);
return (
<ConditionallyRender
condition={paths.length > 1}
show={
<Breadcrumbs className={styles.breadcrumbNav}>
{paths.map((path, index) => {
const lastItem = index === paths.length - 1;
if (lastItem) {
return (
<p className={styles.breadcrumbNavParagraph}>
{path}
</p>
);
}
return (
<Link
className={styles.breadcrumbLink}
to={`/${path}`}
>
{path}
</Link>
);
})}
</Breadcrumbs>
}
/>
);
};
export default BreadcrumbNav;