22541 add semantic back crumb helper and consolidate edge breadcrumb branches

This commit is contained in:
2026-04-09 09:47:53 +01:00
parent e3e893ed58
commit dd2ef694f8
2 changed files with 89 additions and 96 deletions
+61 -96
View File
@@ -139,6 +139,11 @@ const Breadcrumbs = (props) => {
</li>
);
const renderBackCrumb = (
onClick,
listItemClass = "govuk-breadcrumbs__link-item backChevron"
) => renderAnchorCrumb("#", t("common:back-link"), onClick, listItemClass);
const { breadcrumbHref, caseResultsHref, breadcrumbLabel } =
resolveCaseBreadcrumbState({
query: router.query,
@@ -302,57 +307,38 @@ const Breadcrumbs = (props) => {
{isPath("/newappeal/[appealtypes]") && (
<>
{appealType.currentSection > 1 &&
(appealType.currentSection === 9999 ? (
<li className="govuk-breadcrumbs__list-item">
<Link
href={"/"}
className="govuk-breadcrumbs__link"
>
{t(
"common:service-name-breadcrumb"
)}
</Link>
</li>
) : (
renderAnchorCrumb(
"#",
t("common:back-link"),
() =>
setCurrentSection(
appealType.currentSection -
1
),
"govuk-breadcrumbs__link-item"
)
))}
(appealType.currentSection === 9999
? renderLinkCrumb(
"/",
t(
"common:service-name-breadcrumb"
)
)
: renderBackCrumb(
() =>
setCurrentSection(
appealType.currentSection -
1
),
"govuk-breadcrumbs__link-item"
))}
</>
)}
{isPath("/myportal/[appealtypes]") && (
<>
{appealType.currentSection > 1 &&
(appealType.currentSection === 9999 ? (
<li className="govuk-breadcrumbs__list-item">
<Link
href={"/"}
className="govuk-breadcrumbs__link"
>
{t(
"common:service-name-breadcrumb"
)}
</Link>
</li>
) : (
renderAnchorCrumb(
"#",
t("common:back-link"),
() =>
setCurrentSection(
appealType.currentSection -
1
),
"govuk-breadcrumbs__list-item backChevron"
)
))}
(appealType.currentSection === 9999
? renderLinkCrumb(
"/",
t(
"common:service-name-breadcrumb"
)
)
: renderBackCrumb(() =>
setCurrentSection(
appealType.currentSection - 1
)
))}
</>
)}
{isPath("/newappeal/selectappeal") && (
@@ -509,29 +495,23 @@ const Breadcrumbs = (props) => {
)}
{isPath("/case") && (
<>
<li className="govuk-breadcrumbs__list-item">
<Link
href={
isWelsh
? router.locale +
"/searchresults?q=" +
router.query.q +
"&page=" +
router.query.page
: "/searchresults?q=" +
router.query.q +
"&page=" +
router.query.page
}
onClick={() => {
// spinnerState();
router.back();
}}
className="govuk-breadcrumbs__link"
>
{t("common:breadcrumb-search-results")}
</Link>
</li>
{renderLinkCrumb(
isWelsh
? router.locale +
"/searchresults?q=" +
router.query.q +
"&page=" +
router.query.page
: "/searchresults?q=" +
router.query.q +
"&page=" +
router.query.page,
t("common:breadcrumb-search-results"),
() => {
// spinnerState();
router.back();
}
)}
{renderCaseReferenceCrumb(currentReference)}
</>
)}
@@ -540,42 +520,27 @@ const Breadcrumbs = (props) => {
{currentView.representationSubmit === true &&
currentView.representationSubmitConfirmation !==
true &&
renderAnchorCrumb(
"#",
t("common:back-link"),
() => {
setRepresentationSubmit(qcount);
},
"govuk-breadcrumbs__link-item backChevron"
)}
renderBackCrumb(() => {
setRepresentationSubmit(qcount);
})}
{currentView.representationSubmit !== true &&
hasRepDetails &&
repDetails?.representationType !==
"Questionnaire" &&
renderAnchorCrumb(
"#",
t("common:back-link"),
() => {
setRepresentationSubmit(false);
},
"govuk-breadcrumbs__link-item backChevron"
)}
renderBackCrumb(() => {
setRepresentationSubmit(false);
})}
{currentView.representationSubmit !== true &&
hasRepDetails &&
repDetails?.representationType ===
"Questionnaire" &&
showQuestionnaireSection > 1 &&
renderAnchorCrumb(
"#",
t("common:back-link"),
() => {
setShowQuestionnaireSection(
showQuestionnaireSection - 1
);
setRepresentationSubmit(false);
},
"govuk-breadcrumbs__link-item backChevron"
)}
renderBackCrumb(() => {
setShowQuestionnaireSection(
showQuestionnaireSection - 1
);
setRepresentationSubmit(false);
})}
</>
)}
{isPath("/account/personaldetails") && (