1 | import "antd/es/drawer/style";
|
2 | import _Drawer from "antd/es/drawer";
|
3 | import _extends from "@babel/runtime/helpers/esm/extends";
|
4 | import _objectSpread from "@babel/runtime/helpers/esm/objectSpread2";
|
5 | import { getFlatMenus } from '@umijs/route-utils';
|
6 | import classNames from 'classnames';
|
7 | import Omit from 'omit.js';
|
8 | import React, { useEffect } from 'react';
|
9 | import MenuCounter from './Counter';
|
10 | import SiderMenu from './SiderMenu';
|
11 |
|
12 | var SiderMenuWrapper = function SiderMenuWrapper(props) {
|
13 | var isMobile = props.isMobile,
|
14 | menuData = props.menuData,
|
15 | siderWidth = props.siderWidth,
|
16 | collapsed = props.collapsed,
|
17 | onCollapse = props.onCollapse,
|
18 | style = props.style,
|
19 | className = props.className,
|
20 | hide = props.hide,
|
21 | getContainer = props.getContainer,
|
22 | prefixCls = props.prefixCls,
|
23 | matchMenuKeys = props.matchMenuKeys;
|
24 |
|
25 | var _MenuCounter$useConta = MenuCounter.useContainer(),
|
26 | setFlatMenuKeys = _MenuCounter$useConta.setFlatMenuKeys;
|
27 |
|
28 | useEffect(function () {
|
29 | if (!menuData || menuData.length < 1) {
|
30 | return;
|
31 | }
|
32 |
|
33 |
|
34 | var newFlatMenus = getFlatMenus(menuData);
|
35 | setFlatMenuKeys(Object.keys(newFlatMenus));
|
36 | }, [matchMenuKeys.join('-')]);
|
37 | useEffect(function () {
|
38 | if (isMobile === true) {
|
39 | onCollapse === null || onCollapse === void 0 ? void 0 : onCollapse(true);
|
40 | }
|
41 |
|
42 | }, [isMobile]);
|
43 | var omitProps = Omit(props, ['className', 'style']);
|
44 |
|
45 | if (hide) {
|
46 | return null;
|
47 | }
|
48 |
|
49 | return isMobile ? React.createElement(_Drawer, {
|
50 | visible: !collapsed,
|
51 | placement: "left",
|
52 | className: classNames("".concat(prefixCls, "-drawer-sider"), className),
|
53 | onClose: function onClose() {
|
54 | return onCollapse === null || onCollapse === void 0 ? void 0 : onCollapse(true);
|
55 | },
|
56 | style: _objectSpread({
|
57 | padding: 0,
|
58 | height: '100vh'
|
59 | }, style),
|
60 | getContainer: getContainer,
|
61 | width: siderWidth,
|
62 | bodyStyle: {
|
63 | height: '100vh',
|
64 | padding: 0,
|
65 | display: 'flex',
|
66 | flexDirection: 'row'
|
67 | }
|
68 | }, React.createElement(SiderMenu, _extends({}, omitProps, {
|
69 | className: classNames("".concat(prefixCls, "-sider"), className),
|
70 | collapsed: isMobile ? false : collapsed,
|
71 | splitMenus: false
|
72 | }))) : React.createElement(SiderMenu, _extends({
|
73 | className: classNames("".concat(prefixCls, "-sider"), className)
|
74 | }, omitProps, {
|
75 | style: style
|
76 | }));
|
77 | };
|
78 |
|
79 | export default SiderMenuWrapper; |
\ | No newline at end of file |