mirror of
https://github.com/ansible/awx.git
synced 2026-05-20 15:27:47 -02:30
Add PF Breadcrumb components
This commit is contained in:
@@ -3,7 +3,9 @@ import { Trans } from '@lingui/macro';
|
|||||||
import {
|
import {
|
||||||
PageSection,
|
PageSection,
|
||||||
PageSectionVariants,
|
PageSectionVariants,
|
||||||
Title,
|
Breadcrumb,
|
||||||
|
BreadcrumbItem,
|
||||||
|
BreadcrumbHeading
|
||||||
} from '@patternfly/react-core';
|
} from '@patternfly/react-core';
|
||||||
import {
|
import {
|
||||||
Link
|
Link
|
||||||
@@ -21,20 +23,22 @@ const OrganizationBreadcrumb = ({ parentObj, organization, currentTab, location
|
|||||||
.map(({ url, name }, index) => {
|
.map(({ url, name }, index) => {
|
||||||
let elem;
|
let elem;
|
||||||
if (noLastLink && parentObj.length - 1 === index) {
|
if (noLastLink && parentObj.length - 1 === index) {
|
||||||
elem = (<Fragment key={name}>{name}</Fragment>);
|
elem = (<BreadcrumbHeading className="heading" key={name}>{name}</BreadcrumbHeading>);
|
||||||
} else {
|
} else {
|
||||||
elem = (
|
elem = (
|
||||||
<Link
|
<BreadcrumbItem key={name}>
|
||||||
key={name}
|
<Link
|
||||||
to={{ pathname: url, state: { breadcrumb: parentObj, organization } }}
|
key={name}
|
||||||
>
|
to={{ pathname: url, state: { breadcrumb: parentObj, organization } }}
|
||||||
{name}
|
>
|
||||||
</Link>
|
{name}
|
||||||
|
</Link>
|
||||||
|
</BreadcrumbItem>
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
return elem;
|
return elem;
|
||||||
})
|
})
|
||||||
.reduce((prev, curr) => [prev, ' > ', curr])}
|
.reduce((prev, curr) => [prev, curr])}
|
||||||
</Fragment>
|
</Fragment>
|
||||||
);
|
);
|
||||||
|
|
||||||
@@ -42,25 +46,31 @@ const OrganizationBreadcrumb = ({ parentObj, organization, currentTab, location
|
|||||||
breadcrumb = (
|
breadcrumb = (
|
||||||
<Fragment>
|
<Fragment>
|
||||||
{generateCrumb()}
|
{generateCrumb()}
|
||||||
{' > '}
|
<BreadcrumbHeading className="heading">
|
||||||
{getTabName(currentTab)}
|
{getTabName(currentTab)}
|
||||||
|
</BreadcrumbHeading>
|
||||||
</Fragment>
|
</Fragment>
|
||||||
);
|
);
|
||||||
} else if (location.pathname.indexOf('edit') > -1) {
|
} else if (location.pathname.indexOf('edit') > -1) {
|
||||||
breadcrumb = (
|
breadcrumb = (
|
||||||
<Fragment>
|
<Fragment>
|
||||||
{generateCrumb()}
|
{generateCrumb()}
|
||||||
<Trans>{' > edit'}</Trans>
|
<BreadcrumbHeading className="heading">
|
||||||
|
<Trans>Edit</Trans>
|
||||||
|
</BreadcrumbHeading>
|
||||||
</Fragment>
|
</Fragment>
|
||||||
);
|
);
|
||||||
} else if (location.pathname.indexOf('add') > -1) {
|
} else if (location.pathname.indexOf('add') > -1) {
|
||||||
breadcrumb = (
|
breadcrumb = (
|
||||||
<Fragment>
|
<Fragment>
|
||||||
{generateCrumb()}
|
{generateCrumb()}
|
||||||
<Trans>{' > add'}</Trans>
|
<BreadcrumbHeading className="heading">
|
||||||
|
<Trans>Add</Trans>
|
||||||
|
</BreadcrumbHeading>
|
||||||
</Fragment>
|
</Fragment>
|
||||||
);
|
);
|
||||||
} else {
|
} else {
|
||||||
|
|
||||||
breadcrumb = (
|
breadcrumb = (
|
||||||
<Fragment>
|
<Fragment>
|
||||||
{generateCrumb(true)}
|
{generateCrumb(true)}
|
||||||
@@ -71,7 +81,7 @@ const OrganizationBreadcrumb = ({ parentObj, organization, currentTab, location
|
|||||||
|
|
||||||
return (
|
return (
|
||||||
<PageSection variant={light} className="pf-m-condensed">
|
<PageSection variant={light} className="pf-m-condensed">
|
||||||
<Title size="2xl">{breadcrumb}</Title>
|
<Breadcrumb>{breadcrumb}</Breadcrumb>
|
||||||
</PageSection>
|
</PageSection>
|
||||||
);
|
);
|
||||||
};
|
};
|
||||||
|
|||||||
@@ -15,4 +15,9 @@
|
|||||||
a {
|
a {
|
||||||
display: block;
|
display: block;
|
||||||
}
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
.pf-c-breadcrumb__item.heading {
|
||||||
|
flex: 100%;
|
||||||
|
font-size: 20px;
|
||||||
}
|
}
|
||||||
Reference in New Issue
Block a user