UNPKG

acud

Version:

acg react 组件库

81 lines • 3.11 kB
import _defineProperty from "@babel/runtime/helpers/esm/defineProperty"; import _extends from "@babel/runtime/helpers/esm/extends"; /** * @file * @author dailin01 */ import React, { useContext } from 'react'; import classNames from 'classnames'; import { ItemGroup } from './rc-menu'; import Item from './MenuItem'; import ItemCustom from './MenuItemCustom'; import SubMenu from './SubMenu'; import MenuHead from './MenuHead'; import HeaderMenu from './header'; import GlobalSiderBar from './globalSilderBar'; import BasicMenu from './baseMenu'; import MenuContext from './MenuContext'; import { ConfigContext } from '../config-provider'; ; var Menu = function Menu(props) { var customizePrefixCls = props.prefixCls, _props$mode = props.mode, mode = _props$mode === void 0 ? 'horizontal' : _props$mode, _props$iconList = props.iconList, iconList = _props$iconList === void 0 ? [] : _props$iconList, inlineCollapsed = props.inlineCollapsed, _props$scope = props.scope, scope = _props$scope === void 0 ? 'local' : _props$scope; var _React$useContext = React.useContext(ConfigContext), getPrefixCls = _React$useContext.getPrefixCls; var prefixCls = getPrefixCls('menu', customizePrefixCls); var menuContextValue = useContext(MenuContext); if (scope === 'global') { if (mode === 'horizontal') { return /*#__PURE__*/React.createElement(MenuContext.Provider, { value: _extends(_extends({}, menuContextValue), { menuMode: mode, inlineCollapsed: inlineCollapsed, prefixCls: prefixCls, scope: scope }) }, /*#__PURE__*/React.createElement(HeaderMenu, props)); } if (mode === 'inline') { return /*#__PURE__*/React.createElement(MenuContext.Provider, { value: _extends(_extends({}, menuContextValue), { menuMode: mode, inlineCollapsed: inlineCollapsed, prefixCls: prefixCls, firstLevel: true, scope: scope }) }, /*#__PURE__*/React.createElement(GlobalSiderBar, props)); } } var containerClsName = classNames(_defineProperty({}, "".concat(prefixCls, "-icon-container"), mode === 'horizontal' && iconList.length)); return /*#__PURE__*/React.createElement(MenuContext.Provider, { value: _extends(_extends({}, menuContextValue), { firstLevel: true, menuMode: mode, inlineCollapsed: inlineCollapsed, prefixCls: prefixCls, scope: scope }) }, mode === 'horizontal' && iconList.length ? /*#__PURE__*/React.createElement("div", { className: containerClsName }, /*#__PURE__*/React.createElement(BasicMenu, props), /*#__PURE__*/React.createElement("div", { className: "".concat(prefixCls, "-iconlist") }, iconList.map(function (item, idx) { return /*#__PURE__*/React.createElement("span", { key: idx, className: "icon-item" }, item); }))) : /*#__PURE__*/React.createElement(BasicMenu, props)); }; Menu.Item = Item; Menu.SubMenu = SubMenu; Menu.MenuHead = MenuHead; Menu.ItemGroup = ItemGroup; Menu.ItemCustom = ItemCustom; export default Menu;