UNPKG

@ant-design/pro-layout

Version:
78 lines (64 loc) 2.01 kB
"use strict"; var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault"); Object.defineProperty(exports, "__esModule", { value: true }); exports.clearMenuItem = clearMenuItem; exports.genStringToTheme = genStringToTheme; exports.getOpenKeysFromMenuData = void 0; var _objectSpread2 = _interopRequireDefault(require("@babel/runtime/helpers/objectSpread2")); var getOpenKeysFromMenuData = function getOpenKeysFromMenuData(menuData) { return (menuData || []).reduce(function (pre, item) { if (item.key) { pre.push(item.key); } if (item.routes) { var newArray = pre.concat(getOpenKeysFromMenuData(item.routes) || []); return newArray; } return pre; }, []); }; exports.getOpenKeysFromMenuData = getOpenKeysFromMenuData; var themeConfig = { daybreak: '#1890ff', dust: '#F5222D', volcano: '#FA541C', sunset: '#FAAD14', cyan: '#13C2C2', green: '#52C41A', geekblue: '#2F54EB', purple: '#722ED1' }; /** * Daybreak-> #1890ff * * @param val */ function genStringToTheme(val) { return val && themeConfig[val] ? themeConfig[val] : val; } function clearMenuItem(menusData) { return menusData.map(function (item) { var children = item.children || item.routes; var finalItem = (0, _objectSpread2.default)({}, item); if (!finalItem.name || finalItem.hideInMenu) { return null; } if (finalItem && (finalItem === null || finalItem === void 0 ? void 0 : finalItem.routes)) { if (!finalItem.hideChildrenInMenu && children.some(function (child) { return child && child.name && !child.hideInMenu; })) { return (0, _objectSpread2.default)((0, _objectSpread2.default)({}, item), {}, { children: clearMenuItem(children), routes: clearMenuItem(children) }); } // children 为空就直接删掉 delete finalItem.routes; delete finalItem.children; } return finalItem; }).filter(function (item) { return item; }); }