@nlabs/gothamjs
Version:
Platform
34 lines (33 loc) • 8.49 kB
JavaScript
import { jsx as _jsx } from "react/jsx-runtime";
/**
* Copyright (c) 2018-Present, Nitrogen Labs, Inc.
* Copyrights licensed under the MIT License. See the accompanying LICENSE file for terms.
*/ // import {Flux, FluxFramework} from '@nlabs/arkhamjs';
// import {ReactNode} from 'react';
import { AuthRoute } from '../components/AuthRoute/AuthRoute.js';
export const parseRoutes = (routes = [])=>{
return routes.map((route)=>{
const { authenticate, element, props, routes: nestedRoutes, ...standardRouteProps } = route;
let routeElement = element;
console.log({
authenticate
});
if (authenticate) {
routeElement = /*#__PURE__*/ _jsx(AuthRoute, {
children: element
});
}
if (nestedRoutes?.length) {
return {
...standardRouteProps,
children: parseRoutes(nestedRoutes),
element: routeElement
};
}
return {
...standardRouteProps,
element: routeElement
};
});
};
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi9Vc2Vycy9uaXRyb2c3L0RldmVsb3BtZW50L2dvdGhhbWpzL3NyYy91dGlscy9yb3V0ZVV0aWxzLnRzeCJdLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIENvcHlyaWdodCAoYykgMjAxOC1QcmVzZW50LCBOaXRyb2dlbiBMYWJzLCBJbmMuXG4gKiBDb3B5cmlnaHRzIGxpY2Vuc2VkIHVuZGVyIHRoZSBNSVQgTGljZW5zZS4gU2VlIHRoZSBhY2NvbXBhbnlpbmcgTElDRU5TRSBmaWxlIGZvciB0ZXJtcy5cbiAqL1xuLy8gaW1wb3J0IHtGbHV4LCBGbHV4RnJhbWV3b3JrfSBmcm9tICdAbmxhYnMvYXJraGFtanMnO1xuLy8gaW1wb3J0IHtSZWFjdE5vZGV9IGZyb20gJ3JlYWN0JztcbmltcG9ydCB7QXV0aFJvdXRlfSBmcm9tICcuLi9jb21wb25lbnRzL0F1dGhSb3V0ZS9BdXRoUm91dGUuanMnO1xuXG5pbXBvcnQgdHlwZSB7Um91dGVPYmplY3R9IGZyb20gJ3JlYWN0LXJvdXRlcic7XG5cbi8vIGltcG9ydCB7bGF6eUltcG9ydH0gZnJvbSAnLi9keW5hbWljVXRpbHMnO1xuLy8gaW1wb3J0IHtHb3RoYW1BY3Rpb25zfSBmcm9tICcuLi9hY3Rpb25zL0dvdGhhbUFjdGlvbnMnO1xuLy8gaW1wb3J0IHtHb3RoYW1Sb3V0ZX0gZnJvbSAnLi4vY29tcG9uZW50cy9Hb3RoYW1Sb3V0ZS9Hb3RoYW1Sb3V0ZSc7XG4vLyBpbXBvcnQge0xvYWRlcn0gZnJvbSAnLi4vY29tcG9uZW50cy9Mb2FkZXIvTG9hZGVyJztcbi8vIGltcG9ydCB7dHlwZSBHb3RoYW1Db25maWd1cmF0aW9ufSBmcm9tICcuLi92aWV3cy9Hb3RoYW0vR290aGFtUHJvdmlkZXInO1xuXG4vLyBpbXBvcnQgdHlwZSB7R290aGFtUm91dGVEYXRhfSBmcm9tICcuLi90eXBlcy9nb3RoYW0nO1xuXG4vLyBjb25zdCB7Tm90Rm91bmRWaWV3fSA9IGxhenlJbXBvcnQoKCkgPT4gaW1wb3J0KCcuLi92aWV3cy9Ob3RGb3VuZFZpZXcvTm90Rm91bmRWaWV3JyksICdOb3RGb3VuZFZpZXcnKTtcblxuLy8gZXhwb3J0IGludGVyZmFjZSBSb3V0ZVZpZXdQcm9wcyB7XG4vLyAgIGxvYWRlcj86IHR5cGVvZiBMb2FkZXI7XG4vLyAgIGdvdGhhbUNvbmZpZzogR290aGFtQ29uZmlndXJhdGlvbjtcbi8vICAgRmx1eDogRmx1eEZyYW1ld29yaztcbi8vICAgcHJvcHM/OiBSZWNvcmQ8c3RyaW5nLCB1bmtub3duPjtcbi8vICAgdGl0bGU/OiBzdHJpbmc7XG4vLyAgIFtrZXk6IHN0cmluZ106IHVua25vd247XG4vLyB9XG5cbi8vIGV4cG9ydCBjb25zdCBmYWRlVHJhbnNpdGlvbiA9IHtcbi8vICAgYXRBY3RpdmU6IHtcbi8vICAgICBvcGFjaXR5OiAxLFxuLy8gICAgIHBvc2l0aW9uOiAncmVsYXRpdmUnXG4vLyAgIH0sXG4vLyAgIGF0RW50ZXI6IHtcbi8vICAgICBvcGFjaXR5OiAwLFxuLy8gICAgIHBvc2l0aW9uOiAnYWJzb2x1dGUnXG4vLyAgIH0sXG4vLyAgIGF0TGVhdmU6IHtcbi8vICAgICBvcGFjaXR5OiAwLFxuLy8gICAgIHBvc2l0aW9uOiAnYWJzb2x1dGUnXG4vLyAgIH1cbi8vIH07XG5cbi8vIGV4cG9ydCBjb25zdCByZW5kZXJSb3V0ZSA9IChcbi8vICAgcm91dGU6IEdvdGhhbVJvdXRlRGF0YSxcbi8vICAgRmx1eDogRmx1eEZyYW1ld29yayxcbi8vICAgZ290aGFtQ29uZmlnOiBHb3RoYW1Db25maWd1cmF0aW9uXG4vLyApOiBSZWFjdE5vZGUgPT4ge1xuLy8gICBjb25zdCB7YXV0aGVudGljYXRlID0gZmFsc2UsIHBhdGgsIHByb3BzOiBjb21wb25lbnRQcm9wcywgLi4ucmVzdFJvdXRlUHJvcHN9ID0gcm91dGU7XG4vLyAgIGNvbnN0IHZpZXdQcm9wczogUm91dGVWaWV3UHJvcHMgPSB7Rmx1eCwgYXV0aGVudGljYXRlLCBnb3RoYW1Db25maWcsIC4uLnJlc3RSb3V0ZVByb3BzLCAuLi5jb21wb25lbnRQcm9wc307XG5cbi8vICAgcmV0dXJuIChcbi8vICAgICA8Um91dGVcbi8vICAgICAgIGtleT17cGF0aH1cbi8vICAgICAgIHBhdGg9e3BhdGh9XG4vLyAgICAgICBlbGVtZW50PXs8R290aGFtUm91dGUgcm91dGVQcm9wcz17cm91dGV9IHZpZXdQcm9wcz17dmlld1Byb3BzfSAvPn1cbi8vICAgICAgIGluZGV4PXtwYXRoID09PSAnLyd9XG4vLyAgICAgICB7Li4ucmVzdFJvdXRlUHJvcHN9XG4vLyAgICAgLz5cbi8vICAgKTtcbi8vIH07XG5cbi8vIGV4cG9ydCBjb25zdCBnZXRSb3V0ZXMgPSAocm91dGVzLCBGbHV4OiBGbHV4RnJhbWV3b3JrLCBnb3RoYW1Db25maWc6IEdvdGhhbUNvbmZpZ3VyYXRpb24pID0+XG4vLyAgIHJvdXRlcy5yZWR1Y2UoKHJlbmRlcmVkUm91dGVzOiBSZWFjdE5vZGVbXSwgcm91dGU6IEdvdGhhbVJvdXRlRGF0YSkgPT4ge1xuLy8gICAgIGNvbnN0IHtwYXRoLCByb3V0ZXM6IG5lc3RlZFJvdXRlc30gPSByb3V0ZTtcbi8vICAgICBsZXQgcm91dGVMaXN0ID0gWy4uLnJlbmRlcmVkUm91dGVzXTtcblxuLy8gICAgIC8vIE9ubHkgcmVuZGVyIHJvdXRlcyB0aGF0IGhhdmUgYSBwYXRoIGFuZCBhcmUgbm90IGEgY3VzdG9tIGVycm9yIHBhZ2UuXG4vLyAgICAgaWYoISFwYXRoICYmIGlzTmFOKCsocGF0aCkpKSB7XG4vLyAgICAgICByb3V0ZUxpc3QucHVzaChyZW5kZXJSb3V0ZShyb3V0ZSwgRmx1eCwgZ290aGFtQ29uZmlnKSk7XG4vLyAgICAgfVxuXG4vLyAgICAgaWYobmVzdGVkUm91dGVzICYmIG5lc3RlZFJvdXRlcy5sZW5ndGgpIHtcbi8vICAgICAgIHJvdXRlTGlzdCA9IHJvdXRlTGlzdC5jb25jYXQoZ2V0Um91dGVzKG5lc3RlZFJvdXRlcywgRmx1eCwgZ290aGFtQ29uZmlnKSk7XG4vLyAgICAgfVxuXG4vLyAgICAgcmV0dXJuIHJvdXRlTGlzdDtcbi8vICAgfSwgW10pO1xuXG4vLyBleHBvcnQgY29uc3QgcmVuZGVyUm91dGVMaXN0ID0gKFxuLy8gICByb3V0ZXM6IEdvdGhhbVJvdXRlRGF0YVtdID0gW10sXG4vLyAgIEZsdXg6IEZsdXhGcmFtZXdvcmssXG4vLyAgIGdvdGhhbUNvbmZpZzogR290aGFtQ29uZmlndXJhdGlvblxuLy8gKTogUmVhY3ROb2RlW10gPT4ge1xuLy8gICBjb25zdCB7dGl0bGVCYXJTZXBhcmF0b3J9ID0gZ290aGFtQ29uZmlnPy5hcHAgfHwge307XG4vLyAgIGNvbnN0IGdvdGhhbVJvdXRlczogUmVhY3ROb2RlW10gPSBnZXRSb3V0ZXMocm91dGVzLCBGbHV4LCBnb3RoYW1Db25maWcpO1xuXG4vLyAgIC8vIFNlZSBpZiB0aGUgdXNlciBoYXMgcHJvdmlkZWQgYSB2aWV3IGZvciBubyBtYXRjaGVzXG4vLyAgIGNvbnN0IG5vdEZvdW5kOiBHb3RoYW1Sb3V0ZURhdGEgPSByb3V0ZXMuZmluZCgocm91dGU6IEdvdGhhbVJvdXRlRGF0YSkgPT4gcm91dGUgJiYgcm91dGUucGF0aCA9PT0gJzQwNCcpO1xuXG4vLyAgIC8vIElmIG5vdCwgbG9hZCB0aGUgZGVmYXVsdCB2aWV3XG4vLyAgIGNvbnN0IG5vdEZvdW5kUm91dGU6IEdvdGhhbVJvdXRlRGF0YSA9IHt0aXRsZTogJ1BhZ2UgTm90IEZvdW5kJywgLi4ubm90Rm91bmQsIHZpZXc6ICdub3Rmb3VuZCd9O1xuLy8gICBjb25zdCB7dGl0bGV9ID0gbm90Rm91bmRSb3V0ZTtcblxuLy8gICBHb3RoYW1BY3Rpb25zLnVwZGF0ZVRpdGxlKHRpdGxlLCB0aXRsZUJhclNlcGFyYXRvcik7XG5cbi8vICAgY29uc3QgcmVuZGVyNDA0ID0gPFJvdXRlXG4vLyAgICAga2V5PVwibm90Rm91bmRcIlxuLy8gICAgIGVsZW1lbnQ9ezxHb3RoYW1Sb3V0ZSByb3V0ZVByb3BzPXtub3RGb3VuZFJvdXRlfSB2aWV3UHJvcHM9e3t0aXRsZX0gYXMgUm91dGVWaWV3UHJvcHN9IC8+fVxuLy8gICAvPjtcblxuLy8gICByZXR1cm4gWy4uLmdvdGhhbVJvdXRlcywgcmVuZGVyNDA0XTtcbi8vIH07XG5cbi8vIGV4cG9ydCBjb25zdCByZW5kZXJTd2l0Y2ggPSAoXG4vLyAgIHJvdXRlczogR290aGFtUm91dGVEYXRhW10gPSBbXSxcbi8vICAgRmx1eDogRmx1eEZyYW1ld29yayxcbi8vICAgZ290aGFtQ29uZmlnOiBHb3RoYW1Db25maWd1cmF0aW9uXG4vLyApOiBSZWFjdE5vZGUgPT5cbi8vICAgPFJvdXRlcz57cmVuZGVyUm91dGVMaXN0KHJvdXRlcywgRmx1eCwgZ290aGFtQ29uZmlnKX08L1JvdXRlcz47XG5cbi8vIERlZmluZSBhIHR5cGUgZm9yIG91ciBjdXN0b20gcm91dGUgb2JqZWN0c1xuZXhwb3J0IHR5cGUgQ3VzdG9tUm91dGVQcm9wcyA9IFJvdXRlT2JqZWN0ICYge1xuICByZWFkb25seSBhdXRoZW50aWNhdGU/OiBib29sZWFuO1xuICByZWFkb25seSBwcm9wcz86IFJlY29yZDxzdHJpbmcsIHVua25vd24+O1xuICByZWFkb25seSByb3V0ZXM/OiBDdXN0b21Sb3V0ZVByb3BzW107XG59XG5cbmV4cG9ydCBjb25zdCBwYXJzZVJvdXRlcyA9IChyb3V0ZXM6IEN1c3RvbVJvdXRlUHJvcHNbXSA9IFtdKTogUm91dGVPYmplY3RbXSA9PiB7XG4gIHJldHVybiByb3V0ZXMubWFwKHJvdXRlID0+IHtcbiAgICBjb25zdCB7XG4gICAgICBhdXRoZW50aWNhdGUsXG4gICAgICBlbGVtZW50LFxuICAgICAgcHJvcHMsXG4gICAgICByb3V0ZXM6IG5lc3RlZFJvdXRlcyxcbiAgICAgIC4uLnN0YW5kYXJkUm91dGVQcm9wc1xuICAgIH0gPSByb3V0ZTtcblxuICAgIGxldCByb3V0ZUVsZW1lbnQgPSBlbGVtZW50O1xuXG4gICAgY29uc29sZS5sb2coe2F1dGhlbnRpY2F0ZX0pO1xuICAgIGlmIChhdXRoZW50aWNhdGUpIHtcbiAgICAgIHJvdXRlRWxlbWVudCA9IDxBdXRoUm91dGU+e2VsZW1lbnR9PC9BdXRoUm91dGU+O1xuICAgIH1cblxuICAgIGlmIChuZXN0ZWRSb3V0ZXM/Lmxlbmd0aCkge1xuICAgICAgcmV0dXJuIHtcbiAgICAgICAgLi4uc3RhbmRhcmRSb3V0ZVByb3BzLFxuICAgICAgICBjaGlsZHJlbjogcGFyc2VSb3V0ZXMobmVzdGVkUm91dGVzKSxcbiAgICAgICAgZWxlbWVudDogcm91dGVFbGVtZW50XG4gICAgICB9IGFzIFJvdXRlT2JqZWN0O1xuICAgIH1cblxuICAgIHJldHVybiB7XG4gICAgICAuLi5zdGFuZGFyZFJvdXRlUHJvcHMsXG4gICAgICBlbGVtZW50OiByb3V0ZUVsZW1lbnRcbiAgICB9IGFzIFJvdXRlT2JqZWN0O1xuICB9KTtcbn07XG5cbiJdLCJuYW1lcyI6WyJBdXRoUm91dGUiLCJwYXJzZVJvdXRlcyIsInJvdXRlcyIsIm1hcCIsInJvdXRlIiwiYXV0aGVudGljYXRlIiwiZWxlbWVudCIsInByb3BzIiwibmVzdGVkUm91dGVzIiwic3RhbmRhcmRSb3V0ZVByb3BzIiwicm91dGVFbGVtZW50IiwiY29uc29sZSIsImxvZyIsImxlbmd0aCIsImNoaWxkcmVuIl0sIm1hcHBpbmdzIjoiO0FBQUE7OztDQUdDLEdBQ0QsdURBQXVEO0FBQ3ZELG1DQUFtQztBQUNuQyxTQUFRQSxTQUFTLFFBQU8sdUNBQXVDO0FBaUgvRCxPQUFPLE1BQU1DLGNBQWMsQ0FBQ0MsU0FBNkIsRUFBRTtJQUN6RCxPQUFPQSxPQUFPQyxHQUFHLENBQUNDLENBQUFBO1FBQ2hCLE1BQU0sRUFDSkMsWUFBWSxFQUNaQyxPQUFPLEVBQ1BDLEtBQUssRUFDTEwsUUFBUU0sWUFBWSxFQUNwQixHQUFHQyxvQkFDSixHQUFHTDtRQUVKLElBQUlNLGVBQWVKO1FBRW5CSyxRQUFRQyxHQUFHLENBQUM7WUFBQ1A7UUFBWTtRQUN6QixJQUFJQSxjQUFjO1lBQ2hCSyw2QkFBZSxLQUFDVjswQkFBV007O1FBQzdCO1FBRUEsSUFBSUUsY0FBY0ssUUFBUTtZQUN4QixPQUFPO2dCQUNMLEdBQUdKLGtCQUFrQjtnQkFDckJLLFVBQVViLFlBQVlPO2dCQUN0QkYsU0FBU0k7WUFDWDtRQUNGO1FBRUEsT0FBTztZQUNMLEdBQUdELGtCQUFrQjtZQUNyQkgsU0FBU0k7UUFDWDtJQUNGO0FBQ0YsRUFBRSJ9