refactor(breadcrumbs): map step-back route branches into renderer group
This commit is contained in:
@@ -167,6 +167,42 @@ export const createCallbackRouteRenderers = ({
|
||||
)
|
||||
});
|
||||
|
||||
export const createStepBackRouteRenderers = ({
|
||||
t,
|
||||
currentSection,
|
||||
onStepBack,
|
||||
onStepBackWithInlineClass,
|
||||
renderLinkCrumb,
|
||||
renderBackCrumb
|
||||
}) => ({
|
||||
"/newappeal/[appealtypes]": () => {
|
||||
if (currentSection <= 1) {
|
||||
return null;
|
||||
}
|
||||
|
||||
if (currentSection === 9999) {
|
||||
return renderLinkCrumb("/", t("common:service-name-breadcrumb"));
|
||||
}
|
||||
|
||||
return renderBackCrumb(
|
||||
onStepBackWithInlineClass,
|
||||
"govuk-breadcrumbs__link-item"
|
||||
);
|
||||
},
|
||||
|
||||
"/myportal/[appealtypes]": () => {
|
||||
if (currentSection <= 1) {
|
||||
return null;
|
||||
}
|
||||
|
||||
if (currentSection === 9999) {
|
||||
return renderLinkCrumb("/", t("common:service-name-breadcrumb"));
|
||||
}
|
||||
|
||||
return renderBackCrumb(onStepBack);
|
||||
}
|
||||
});
|
||||
|
||||
export const createCaseDetailRouteRenderers = ({
|
||||
t,
|
||||
router,
|
||||
@@ -418,13 +454,17 @@ export const createMappedRouteRendererGroups = ({
|
||||
nestedSearchString,
|
||||
caseReferenceDisplay,
|
||||
onBack,
|
||||
currentSection,
|
||||
onStepBack,
|
||||
onStepBackWithInlineClass,
|
||||
renderAnchorCrumb,
|
||||
renderLinkCrumb,
|
||||
renderTextCrumb,
|
||||
renderCaseReferenceCrumb,
|
||||
renderMyPortalCrumb,
|
||||
renderMyPortalSectionCrumbs,
|
||||
renderDnsCaseReferenceCrumbs
|
||||
renderDnsCaseReferenceCrumbs,
|
||||
renderBackCrumb
|
||||
}) => {
|
||||
const simpleRouteRenderersByPath = createSimpleRouteRenderers({
|
||||
t,
|
||||
@@ -476,6 +516,15 @@ export const createMappedRouteRendererGroups = ({
|
||||
onBack
|
||||
});
|
||||
|
||||
const stepBackRouteRenderersByPath = createStepBackRouteRenderers({
|
||||
t,
|
||||
currentSection,
|
||||
onStepBack,
|
||||
onStepBackWithInlineClass,
|
||||
renderLinkCrumb,
|
||||
renderBackCrumb
|
||||
});
|
||||
|
||||
const caseDetailRouteRenderersByPath = createCaseDetailRouteRenderers({
|
||||
t,
|
||||
router,
|
||||
@@ -512,6 +561,7 @@ export const createMappedRouteRendererGroups = ({
|
||||
simpleMyPortalRouteRenderersByPath,
|
||||
newAppealRouteRenderersByPath,
|
||||
callbackRouteRenderersByPath,
|
||||
stepBackRouteRenderersByPath,
|
||||
caseDetailRouteRenderersByPath,
|
||||
detailAndAccountRouteRenderersByPath
|
||||
};
|
||||
|
||||
@@ -24,6 +24,7 @@ const buildBreadcrumbRendererMaps = ({
|
||||
simpleMyPortalRouteRenderersByPath,
|
||||
newAppealRouteRenderersByPath,
|
||||
callbackRouteRenderersByPath,
|
||||
stepBackRouteRenderersByPath,
|
||||
caseDetailRouteRenderersByPath,
|
||||
detailAndAccountRouteRenderersByPath
|
||||
}) => [
|
||||
@@ -32,6 +33,7 @@ const buildBreadcrumbRendererMaps = ({
|
||||
simpleMyPortalRouteRenderersByPath,
|
||||
newAppealRouteRenderersByPath,
|
||||
callbackRouteRenderersByPath,
|
||||
stepBackRouteRenderersByPath,
|
||||
caseDetailRouteRenderersByPath,
|
||||
detailAndAccountRouteRenderersByPath
|
||||
];
|
||||
|
||||
Reference in New Issue
Block a user