Files
documentation/node_modules/react-router-config/modules/matchRoutes.js
2024-03-22 03:47:51 +05:30

26 lines
593 B
JavaScript

import { matchPath, Router } from "react-router";
function matchRoutes(routes, pathname, /*not public API*/ branch = []) {
routes.some(route => {
const match = route.path
? matchPath(pathname, route)
: branch.length
? branch[branch.length - 1].match // use parent match
: Router.computeRootMatch(pathname); // use default "root" match
if (match) {
branch.push({ route, match });
if (route.routes) {
matchRoutes(route.routes, pathname, branch);
}
}
return match;
});
return branch;
}
export default matchRoutes;