@modern-js/utils
Version:
A Progressive React Framework for modern web development.
77 lines (76 loc) • 3.07 kB
JavaScript
;
var __webpack_require__ = {};
(()=>{
__webpack_require__.d = (exports1, definition)=>{
for(var key in definition)if (__webpack_require__.o(definition, key) && !__webpack_require__.o(exports1, key)) Object.defineProperty(exports1, key, {
enumerable: true,
get: definition[key]
});
};
})();
(()=>{
__webpack_require__.o = (obj, prop)=>Object.prototype.hasOwnProperty.call(obj, prop);
})();
(()=>{
__webpack_require__.r = (exports1)=>{
if ("u" > typeof Symbol && Symbol.toStringTag) Object.defineProperty(exports1, Symbol.toStringTag, {
value: 'Module'
});
Object.defineProperty(exports1, '__esModule', {
value: true
});
};
})();
var __webpack_exports__ = {};
__webpack_require__.r(__webpack_exports__);
__webpack_require__.d(__webpack_exports__, {
filterRoutesForServer: ()=>filterRoutesForServer,
filterRoutesLoader: ()=>filterRoutesLoader,
markRoutes: ()=>markRoutes
});
const external_compiled_js_namespaceObject = require("../compiled.js");
const { cloneDeep } = external_compiled_js_namespaceObject.lodash;
function filterRoutesForServer(routes) {
const clonedRoutes = cloneDeep(routes);
const newRoutes = clonedRoutes.map((route)=>{
if ('nested' !== route.type) return route;
if (route.children && route.children.length > 0) route.children = filterRoutesForServer(route.children);
if (route.inValidSSRRoute) return null;
return route;
}).filter((route)=>null !== route);
return newRoutes;
}
function filterRoutesLoader(routes) {
const clonedRoutes = cloneDeep(routes);
const newRoutes = clonedRoutes.map((route)=>{
if ('nested' !== route.type) return route;
if (route.children && route.children.length > 0) route.children = filterRoutesLoader(route.children);
if (route.inValidSSRRoute) {
delete route.loader;
delete route.data;
delete route.action;
}
return route;
}).filter((route)=>null !== route);
return newRoutes;
}
function markRoutes(routes, routeIds) {
return routes.map((route)=>{
if ('nested' !== route.type) return route;
if (route.children && route.children.length > 0) route.children = markRoutes(route.children, routeIds);
if (route.children && route.children.length > 0) route.inValidSSRRoute = route.children.every((child)=>child.inValidSSRRoute ?? false);
else if (route.id) route.inValidSSRRoute = !routeIds.includes(route.id);
return route;
});
}
exports.filterRoutesForServer = __webpack_exports__.filterRoutesForServer;
exports.filterRoutesLoader = __webpack_exports__.filterRoutesLoader;
exports.markRoutes = __webpack_exports__.markRoutes;
for(var __rspack_i in __webpack_exports__)if (-1 === [
"filterRoutesForServer",
"filterRoutesLoader",
"markRoutes"
].indexOf(__rspack_i)) exports[__rspack_i] = __webpack_exports__[__rspack_i];
Object.defineProperty(exports, '__esModule', {
value: true
});