22541 extract breadcrumb route-map helpers and add precedence guard tests
This commit is contained in:
@@ -13,6 +13,10 @@ import {
|
||||
setRepresentationSubmit
|
||||
} from "../store/currentView/action";
|
||||
import { resolveCaseBreadcrumbState } from "../lib/routing/routeState";
|
||||
import {
|
||||
buildBreadcrumbRendererMaps,
|
||||
resolveMappedRouteRenderer as resolveMappedRouteRendererByMaps
|
||||
} from "../lib/routing/breadcrumbRouteMaps";
|
||||
const Breadcrumbs = (props) => {
|
||||
const {
|
||||
currentView,
|
||||
@@ -206,27 +210,14 @@ const Breadcrumbs = (props) => {
|
||||
)
|
||||
};
|
||||
|
||||
const mappedRouteRendererMaps = [
|
||||
const mappedRouteRendererMaps = buildBreadcrumbRendererMaps({
|
||||
simpleRouteRenderersByPath,
|
||||
simpleLinkTextPairRenderersByPath,
|
||||
simpleMyPortalRouteRenderersByPath
|
||||
];
|
||||
|
||||
const getMappedRendererByPath = (path, routeRendererMap) =>
|
||||
routeRendererMap[path] || null;
|
||||
});
|
||||
|
||||
const resolveMappedRouteRenderer = (path) => {
|
||||
for (const routeRendererMap of mappedRouteRendererMaps) {
|
||||
const routeRenderer = getMappedRendererByPath(
|
||||
path,
|
||||
routeRendererMap
|
||||
);
|
||||
if (routeRenderer) {
|
||||
return routeRenderer;
|
||||
}
|
||||
}
|
||||
|
||||
return null;
|
||||
return resolveMappedRouteRendererByMaps(path, mappedRouteRendererMaps);
|
||||
};
|
||||
|
||||
const renderMappedRoute = (path, resolver = resolveMappedRouteRenderer) => {
|
||||
|
||||
Reference in New Issue
Block a user