22541 extract shared my-portal breadcrumb list item helper

This commit is contained in:
2026-04-09 09:32:21 +01:00
parent f447aa19ea
commit 035f0e9adf
2 changed files with 44 additions and 88 deletions
+25
View File
@@ -112,6 +112,31 @@ Follow-ups:
- Next bounded slice can extract grouped pathname render blocks from `components/breadcrumbs.js` (data-driven map or small render helpers) while preserving route parity.
### CL-22541-D: breadcrumbs shared my-portal crumb helper extraction
date: 2026-04-09
author: Cline
scope: `components/breadcrumbs.js`
type: change
rationale: Continue bounded breadcrumbs decomposition by extracting repeated my-portal breadcrumb `<li>` markup into one local render helper to reduce duplication and keep follow-on slices safer.
impact: Refactor-only JSX deduplication in breadcrumb rendering; no intended route, auth/session, API, EN/CY, or accessibility behavior change.
status: completed
Summary:
- Added local `renderMyPortalCrumb()` helper in `components/breadcrumbs.js`.
- Replaced repeated identical my-portal crumb JSX in multiple `/myportal/*` route branches with helper calls.
- Kept special-case crumbs untouched where label/href differs (e.g. `newappeal` parent-title crumb, `cyMyPortalHref` account branches).
Validation:
- `npx eslint components/breadcrumbs.js` -> pass.
- `node tests/phase22/index.test.cjs` -> pass (combined suite).
Follow-ups:
- Next bounded slice can target additional repeated breadcrumb list-item patterns (e.g., repeated case-reference tail item blocks) with same behavior parity approach.
### CL-00X: 22500 `components/elements/index.js` Phase 1 helper extraction
date: 2026-04-07