@lskjs/uapp
Version:
LSK universal react app wrapper
30 lines (29 loc) • 1.31 kB
JavaScript
;
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
Object.defineProperty(exports, "__esModule", {
value: true
});
exports["default"] = exports.collectUniversalRoutes = void 0;
var _toConsumableArray2 = _interopRequireDefault(require("@babel/runtime/helpers/toConsumableArray"));
var _lodash = require("lodash");
var _flatten = _interopRequireDefault(require("lodash/flatten"));
var collectUniversalRoutes = function collectUniversalRoutes(route) {
var _ref = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {},
_ref$path = _ref.path,
parentPath = _ref$path === void 0 ? '' : _ref$path;
if (Array.isArray(route)) return (0, _flatten["default"])(route.map(collectUniversalRoutes));
if ((0, _lodash.isPlainObject)(route)) {
var path = [parentPath, route.path].join('#');
var children = route.children ? (0, _flatten["default"])(route.children.map(function (a) {
return collectUniversalRoutes(a, {
path: path
});
})) : [];
return [path].concat((0, _toConsumableArray2["default"])(children));
}
return [];
};
exports.collectUniversalRoutes = collectUniversalRoutes;
var _default = collectUniversalRoutes;
exports["default"] = _default;
//# sourceMappingURL=collectUniversalRoutes.js.map