@ant-design/pro-layout
Version:
33 lines (32 loc) • 1.34 kB
JavaScript
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault").default;
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.getMenuData = void 0;
var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));
var _toConsumableArray2 = _interopRequireDefault(require("@babel/runtime/helpers/toConsumableArray"));
var _routeUtils = require("@umijs/route-utils");
function fromEntries(iterable) {
return (0, _toConsumableArray2.default)(iterable).reduce(function (obj, _ref) {
var _ref2 = (0, _slicedToArray2.default)(_ref, 2),
key = _ref2[0],
val = _ref2[1];
// eslint-disable-next-line no-param-reassign
obj[key] = val;
return obj;
}, {});
}
var getMenuData = exports.getMenuData = function getMenuData(routes, menu, formatMessage, menuDataRender) {
var _transformRoute = (0, _routeUtils.transformRoute)(routes, (menu === null || menu === void 0 ? void 0 : menu.locale) || false, formatMessage, true),
menuData = _transformRoute.menuData,
breadcrumb = _transformRoute.breadcrumb;
if (!menuDataRender) {
return {
breadcrumb: fromEntries(breadcrumb),
breadcrumbMap: breadcrumb,
menuData: menuData
};
}
return getMenuData(menuDataRender(menuData), menu, formatMessage, undefined);
};
;