1 | "use strict";
|
2 |
|
3 | var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault").default;
|
4 | var _interopRequireWildcard = require("@babel/runtime/helpers/interopRequireWildcard").default;
|
5 | Object.defineProperty(exports, "__esModule", {
|
6 | value: true
|
7 | });
|
8 | exports.ProLayout = void 0;
|
9 | var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
|
10 | var _regeneratorRuntime2 = _interopRequireDefault(require("@babel/runtime/helpers/regeneratorRuntime"));
|
11 | var _asyncToGenerator2 = _interopRequireDefault(require("@babel/runtime/helpers/asyncToGenerator"));
|
12 | var _objectWithoutProperties2 = _interopRequireDefault(require("@babel/runtime/helpers/objectWithoutProperties"));
|
13 | var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));
|
14 | var _objectSpread2 = _interopRequireDefault(require("@babel/runtime/helpers/objectSpread2"));
|
15 | var _jsxRuntime = require("react/jsx-runtime");
|
16 | var _proProvider = require("@ant-design/pro-provider");
|
17 | var _proUtils = require("@ant-design/pro-utils");
|
18 | var _routeUtils = require("@umijs/route-utils");
|
19 | var _antd = require("antd");
|
20 | var _classnames = _interopRequireDefault(require("classnames"));
|
21 | var _omit = _interopRequireDefault(require("omit.js"));
|
22 | var _useMergedState3 = _interopRequireDefault(require("rc-util/lib/hooks/useMergedState"));
|
23 | var _warning = _interopRequireDefault(require("rc-util/lib/warning"));
|
24 | var _react = require("react");
|
25 | var _swr = _interopRequireWildcard(require("swr"));
|
26 | var _useMediaAntdQuery = _interopRequireDefault(require("use-media-antd-query"));
|
27 | var _Logo = require("./assert/Logo");
|
28 | var _Footer = require("./components/Footer");
|
29 | var _Header = require("./components/Header");
|
30 | var _PageLoading = require("./components/PageLoading");
|
31 | var _SiderMenu = require("./components/SiderMenu");
|
32 | var _RouteContext = require("./context/RouteContext");
|
33 | var _defaultSettings = require("./defaultSettings");
|
34 | var _getPageTitle = require("./getPageTitle");
|
35 | var _locales = require("./locales");
|
36 | var _style = require("./style");
|
37 | var _getBreadcrumbProps = require("./utils/getBreadcrumbProps");
|
38 | var _getMenuData = require("./utils/getMenuData");
|
39 | var _useCurrentMenuLayoutProps = require("./utils/useCurrentMenuLayoutProps");
|
40 | var _utils = require("./utils/utils");
|
41 | var _WrapContent = require("./WrapContent");
|
42 | var _excluded = ["id", "defaultMessage"],
|
43 | _excluded2 = ["fixSiderbar", "navTheme", "layout"];
|
44 | var layoutIndex = 0;
|
45 | var headerRender = function headerRender(props, matchMenuKeys) {
|
46 | var _props$stylish;
|
47 | if (props.headerRender === false || props.pure) {
|
48 | return null;
|
49 | }
|
50 | return (0, _jsxRuntime.jsx)(_Header.DefaultHeader, (0, _objectSpread2.default)((0, _objectSpread2.default)({
|
51 | matchMenuKeys: matchMenuKeys
|
52 | }, props), {}, {
|
53 | stylish: (_props$stylish = props.stylish) === null || _props$stylish === void 0 ? void 0 : _props$stylish.header
|
54 | }));
|
55 | };
|
56 | var footerRender = function footerRender(props) {
|
57 | if (props.footerRender === false || props.pure) {
|
58 | return null;
|
59 | }
|
60 | if (props.footerRender) {
|
61 | return props.footerRender((0, _objectSpread2.default)({}, props), (0, _jsxRuntime.jsx)(_Footer.DefaultFooter, {}));
|
62 | }
|
63 | return null;
|
64 | };
|
65 | var renderSiderMenu = function renderSiderMenu(props, matchMenuKeys) {
|
66 | var _props$stylish3;
|
67 | var layout = props.layout,
|
68 | isMobile = props.isMobile,
|
69 | selectedKeys = props.selectedKeys,
|
70 | openKeys = props.openKeys,
|
71 | splitMenus = props.splitMenus,
|
72 | menuRender = props.menuRender;
|
73 | if (props.menuRender === false || props.pure) {
|
74 | return null;
|
75 | }
|
76 | var menuData = props.menuData;
|
77 |
|
78 | if (splitMenus && (openKeys !== false || layout === 'mix') && !isMobile) {
|
79 | var _ref = selectedKeys || matchMenuKeys,
|
80 | _ref2 = (0, _slicedToArray2.default)(_ref, 1),
|
81 | key = _ref2[0];
|
82 | if (key) {
|
83 | var _props$menuData, _props$menuData$find;
|
84 | menuData = ((_props$menuData = props.menuData) === null || _props$menuData === void 0 ? void 0 : (_props$menuData$find = _props$menuData.find(function (item) {
|
85 | return item.key === key;
|
86 | })) === null || _props$menuData$find === void 0 ? void 0 : _props$menuData$find.children) || [];
|
87 | } else {
|
88 | menuData = [];
|
89 | }
|
90 | }
|
91 |
|
92 | var clearMenuData = (0, _utils.clearMenuItem)(menuData || []);
|
93 | if (clearMenuData && (clearMenuData === null || clearMenuData === void 0 ? void 0 : clearMenuData.length) < 1 && splitMenus) {
|
94 | return null;
|
95 | }
|
96 | if (layout === 'top' && !isMobile) {
|
97 | var _props$stylish2;
|
98 | return (0, _jsxRuntime.jsx)(_SiderMenu.SiderMenu, (0, _objectSpread2.default)((0, _objectSpread2.default)({
|
99 | matchMenuKeys: matchMenuKeys
|
100 | }, props), {}, {
|
101 | hide: true,
|
102 | stylish: (_props$stylish2 = props.stylish) === null || _props$stylish2 === void 0 ? void 0 : _props$stylish2.sider
|
103 | }));
|
104 | }
|
105 | var defaultDom = (0, _jsxRuntime.jsx)(_SiderMenu.SiderMenu, (0, _objectSpread2.default)((0, _objectSpread2.default)({
|
106 | matchMenuKeys: matchMenuKeys
|
107 | }, props), {}, {
|
108 |
|
109 | menuData: clearMenuData,
|
110 | stylish: (_props$stylish3 = props.stylish) === null || _props$stylish3 === void 0 ? void 0 : _props$stylish3.sider
|
111 | }));
|
112 | if (menuRender) {
|
113 | return menuRender(props, defaultDom);
|
114 | }
|
115 | return defaultDom;
|
116 | };
|
117 | var defaultPageTitleRender = function defaultPageTitleRender(pageProps, props) {
|
118 | var pageTitleRender = props.pageTitleRender;
|
119 | var pageTitleInfo = (0, _getPageTitle.getPageTitleInfo)(pageProps);
|
120 | if (pageTitleRender === false) {
|
121 | return {
|
122 | title: props.title || '',
|
123 | id: '',
|
124 | pageName: ''
|
125 | };
|
126 | }
|
127 | if (pageTitleRender) {
|
128 | var title = pageTitleRender(pageProps, pageTitleInfo.title, pageTitleInfo);
|
129 | if (typeof title === 'string') {
|
130 | return (0, _getPageTitle.getPageTitleInfo)((0, _objectSpread2.default)((0, _objectSpread2.default)({}, pageTitleInfo), {}, {
|
131 | title: title
|
132 | }));
|
133 | }
|
134 | (0, _warning.default)(typeof title === 'string', 'pro-layout: renderPageTitle return value should be a string');
|
135 | }
|
136 | return pageTitleInfo;
|
137 | };
|
138 | var getpaddingInlineStart = function getpaddingInlineStart(hasLeftPadding, collapsed, siderWidth) {
|
139 | if (hasLeftPadding) {
|
140 | return collapsed ? 60 : siderWidth;
|
141 | }
|
142 | return 0;
|
143 | };
|
144 |
|
145 |
|
146 |
|
147 |
|
148 |
|
149 | var BaseProLayout = function BaseProLayout(props) {
|
150 | var _props$prefixCls, _classNames, _location$pathname, _token$layout, _token$layout$pageCon;
|
151 | var _ref3 = props || {},
|
152 | children = _ref3.children,
|
153 | propsOnCollapse = _ref3.onCollapse,
|
154 | _ref3$location = _ref3.location,
|
155 | location = _ref3$location === void 0 ? {
|
156 | pathname: '/'
|
157 | } : _ref3$location,
|
158 | contentStyle = _ref3.contentStyle,
|
159 | route = _ref3.route,
|
160 | defaultCollapsed = _ref3.defaultCollapsed,
|
161 | style = _ref3.style,
|
162 | propsSiderWidth = _ref3.siderWidth,
|
163 | menu = _ref3.menu,
|
164 | siderMenuType = _ref3.siderMenuType,
|
165 | propsIsChildrenLayout = _ref3.isChildrenLayout,
|
166 | menuDataRender = _ref3.menuDataRender,
|
167 | actionRef = _ref3.actionRef,
|
168 | bgLayoutImgList = _ref3.bgLayoutImgList,
|
169 | propsFormatMessage = _ref3.formatMessage,
|
170 | loading = _ref3.loading;
|
171 | var siderWidth = (0, _react.useMemo)(function () {
|
172 | if (propsSiderWidth) return propsSiderWidth;
|
173 | if (props.layout === 'mix') return 215;
|
174 | return 256;
|
175 | }, [props.layout, propsSiderWidth]);
|
176 | var context = (0, _react.useContext)(_antd.ConfigProvider.ConfigContext);
|
177 | var prefixCls = (_props$prefixCls = props.prefixCls) !== null && _props$prefixCls !== void 0 ? _props$prefixCls : context.getPrefixCls('pro');
|
178 | var _useMountMergeState = (0, _proUtils.useMountMergeState)(false, {
|
179 | value: menu === null || menu === void 0 ? void 0 : menu.loading,
|
180 | onChange: menu === null || menu === void 0 ? void 0 : menu.onLoadingChange
|
181 | }),
|
182 | _useMountMergeState2 = (0, _slicedToArray2.default)(_useMountMergeState, 2),
|
183 | menuLoading = _useMountMergeState2[0],
|
184 | setMenuLoading = _useMountMergeState2[1];
|
185 |
|
186 | var _useState = (0, _react.useState)(function () {
|
187 | layoutIndex += 1;
|
188 | return "pro-layout-".concat(layoutIndex);
|
189 | }),
|
190 | _useState2 = (0, _slicedToArray2.default)(_useState, 1),
|
191 | defaultId = _useState2[0];
|
192 | |
193 |
|
194 |
|
195 |
|
196 |
|
197 | var formatMessage = (0, _react.useCallback)(function (_ref4) {
|
198 | var id = _ref4.id,
|
199 | defaultMessage = _ref4.defaultMessage,
|
200 | restParams = (0, _objectWithoutProperties2.default)(_ref4, _excluded);
|
201 | if (propsFormatMessage) {
|
202 | return propsFormatMessage((0, _objectSpread2.default)({
|
203 | id: id,
|
204 | defaultMessage: defaultMessage
|
205 | }, restParams));
|
206 | }
|
207 | var locales = (0, _locales.gLocaleObject)();
|
208 | return locales[id] ? locales[id] : defaultMessage;
|
209 | }, [propsFormatMessage]);
|
210 | var _useSWR = (0, _swr.default)([defaultId, menu === null || menu === void 0 ? void 0 : menu.params], function () {
|
211 | var _ref6 = (0, _asyncToGenerator2.default)( (0, _regeneratorRuntime2.default)().mark(function _callee(_ref5) {
|
212 | var _menu$request;
|
213 | var _ref7, params, menuDataItems;
|
214 | return (0, _regeneratorRuntime2.default)().wrap(function _callee$(_context) {
|
215 | while (1) switch (_context.prev = _context.next) {
|
216 | case 0:
|
217 | _ref7 = (0, _slicedToArray2.default)(_ref5, 2), params = _ref7[1];
|
218 | setMenuLoading(true);
|
219 | _context.next = 4;
|
220 | return menu === null || menu === void 0 ? void 0 : (_menu$request = menu.request) === null || _menu$request === void 0 ? void 0 : _menu$request.call(menu, params || {}, (route === null || route === void 0 ? void 0 : route.children) || (route === null || route === void 0 ? void 0 : route.routes) || []);
|
221 | case 4:
|
222 | menuDataItems = _context.sent;
|
223 | setMenuLoading(false);
|
224 | return _context.abrupt("return", menuDataItems);
|
225 | case 7:
|
226 | case "end":
|
227 | return _context.stop();
|
228 | }
|
229 | }, _callee);
|
230 | }));
|
231 | return function (_x) {
|
232 | return _ref6.apply(this, arguments);
|
233 | };
|
234 | }(), {
|
235 | revalidateOnFocus: false,
|
236 | shouldRetryOnError: false,
|
237 | revalidateOnReconnect: false
|
238 | }),
|
239 | data = _useSWR.data,
|
240 | mutate = _useSWR.mutate;
|
241 | var _useSWRConfig = (0, _swr.useSWRConfig)(),
|
242 | cache = _useSWRConfig.cache;
|
243 | (0, _react.useEffect)(function () {
|
244 | return function () {
|
245 | if (cache instanceof Map) cache.clear();
|
246 | };
|
247 |
|
248 | }, []);
|
249 | var menuInfoData = (0, _react.useMemo)(function () {
|
250 | return (0, _getMenuData.getMenuData)(data || (route === null || route === void 0 ? void 0 : route.children) || (route === null || route === void 0 ? void 0 : route.routes) || [], menu, formatMessage, menuDataRender);
|
251 | }, [formatMessage, menu, menuDataRender, data, route === null || route === void 0 ? void 0 : route.children, route === null || route === void 0 ? void 0 : route.routes]);
|
252 | var _ref8 = menuInfoData || {},
|
253 | _ref8$breadcrumb = _ref8.breadcrumb,
|
254 | breadcrumb = _ref8$breadcrumb === void 0 ? {} : _ref8$breadcrumb,
|
255 | breadcrumbMap = _ref8.breadcrumbMap,
|
256 | _ref8$menuData = _ref8.menuData,
|
257 | menuData = _ref8$menuData === void 0 ? [] : _ref8$menuData;
|
258 | if (actionRef && (menu === null || menu === void 0 ? void 0 : menu.request)) {
|
259 | actionRef.current = {
|
260 | reload: function reload() {
|
261 | mutate();
|
262 | }
|
263 | };
|
264 | }
|
265 | var matchMenus = (0, _react.useMemo)(function () {
|
266 | return (0, _routeUtils.getMatchMenu)(location.pathname || '/', menuData || [], true);
|
267 | }, [location.pathname, menuData]);
|
268 | var matchMenuKeys = (0, _react.useMemo)(function () {
|
269 | return Array.from(new Set(matchMenus.map(function (item) {
|
270 | return item.key || item.path || '';
|
271 | })));
|
272 | }, [matchMenus]);
|
273 |
|
274 | var currentMenu = matchMenus[matchMenus.length - 1] || {};
|
275 | var currentMenuLayoutProps = (0, _useCurrentMenuLayoutProps.useCurrentMenuLayoutProps)(currentMenu);
|
276 | var _props$currentMenuLay = (0, _objectSpread2.default)((0, _objectSpread2.default)({}, props), currentMenuLayoutProps),
|
277 | fixSiderbar = _props$currentMenuLay.fixSiderbar,
|
278 | navTheme = _props$currentMenuLay.navTheme,
|
279 | propsLayout = _props$currentMenuLay.layout,
|
280 | rest = (0, _objectWithoutProperties2.default)(_props$currentMenuLay, _excluded2);
|
281 | var colSize = (0, _useMediaAntdQuery.default)();
|
282 | var isMobile = (colSize === 'sm' || colSize === 'xs') && !props.disableMobile;
|
283 |
|
284 |
|
285 |
|
286 | var hasLeftPadding = propsLayout !== 'top' && !isMobile;
|
287 | var _useMergedState = (0, _useMergedState3.default)(function () {
|
288 | if (defaultCollapsed !== undefined) return defaultCollapsed;
|
289 | if (process.env.NODE_ENV === 'TEST') return false;
|
290 | if (isMobile) return true;
|
291 | if (colSize === 'md') return true;
|
292 | return false;
|
293 | }, {
|
294 | value: props.collapsed,
|
295 | onChange: propsOnCollapse
|
296 | }),
|
297 | _useMergedState2 = (0, _slicedToArray2.default)(_useMergedState, 2),
|
298 | collapsed = _useMergedState2[0],
|
299 | onCollapse = _useMergedState2[1];
|
300 |
|
301 | var defaultProps = (0, _omit.default)((0, _objectSpread2.default)((0, _objectSpread2.default)((0, _objectSpread2.default)({
|
302 | prefixCls: prefixCls
|
303 | }, props), {}, {
|
304 | siderWidth: siderWidth
|
305 | }, currentMenuLayoutProps), {}, {
|
306 | formatMessage: formatMessage,
|
307 | breadcrumb: breadcrumb,
|
308 | menu: (0, _objectSpread2.default)((0, _objectSpread2.default)({}, menu), {}, {
|
309 | type: siderMenuType || (menu === null || menu === void 0 ? void 0 : menu.type),
|
310 | loading: menuLoading
|
311 | }),
|
312 | layout: propsLayout
|
313 | }), ['className', 'style', 'breadcrumbRender']);
|
314 |
|
315 | var pageTitleInfo = defaultPageTitleRender((0, _objectSpread2.default)((0, _objectSpread2.default)({
|
316 | pathname: location.pathname
|
317 | }, defaultProps), {}, {
|
318 | breadcrumbMap: breadcrumbMap
|
319 | }), props);
|
320 |
|
321 | var breadcrumbProps = (0, _getBreadcrumbProps.getBreadcrumbProps)((0, _objectSpread2.default)((0, _objectSpread2.default)({}, defaultProps), {}, {
|
322 | breadcrumbRender: props.breadcrumbRender,
|
323 | breadcrumbMap: breadcrumbMap
|
324 | }), props);
|
325 |
|
326 | var siderMenuDom = renderSiderMenu((0, _objectSpread2.default)((0, _objectSpread2.default)({}, defaultProps), {}, {
|
327 | menuData: menuData,
|
328 | onCollapse: onCollapse,
|
329 | isMobile: isMobile,
|
330 | collapsed: collapsed
|
331 | }), matchMenuKeys);
|
332 |
|
333 | var headerDom = headerRender((0, _objectSpread2.default)((0, _objectSpread2.default)({}, defaultProps), {}, {
|
334 | children: null,
|
335 | hasSiderMenu: !!siderMenuDom,
|
336 | menuData: menuData,
|
337 | isMobile: isMobile,
|
338 | collapsed: collapsed,
|
339 | onCollapse: onCollapse
|
340 | }), matchMenuKeys);
|
341 |
|
342 | var footerDom = footerRender((0, _objectSpread2.default)({
|
343 | isMobile: isMobile,
|
344 | collapsed: collapsed
|
345 | }, defaultProps));
|
346 | var _useContext = (0, _react.useContext)(_RouteContext.RouteContext),
|
347 | contextIsChildrenLayout = _useContext.isChildrenLayout;
|
348 |
|
349 | var isChildrenLayout = propsIsChildrenLayout !== undefined ? propsIsChildrenLayout : contextIsChildrenLayout;
|
350 | var proLayoutClassName = "".concat(prefixCls, "-layout");
|
351 | var _useStyle = (0, _style.useStyle)(proLayoutClassName),
|
352 | wrapSSR = _useStyle.wrapSSR,
|
353 | hashId = _useStyle.hashId;
|
354 |
|
355 | var className = (0, _classnames.default)(props.className, hashId, 'ant-design-pro', proLayoutClassName, (_classNames = {}, (0, _defineProperty2.default)(_classNames, "screen-".concat(colSize), colSize), (0, _defineProperty2.default)(_classNames, "".concat(proLayoutClassName, "-top-menu"), propsLayout === 'top'), (0, _defineProperty2.default)(_classNames, "".concat(proLayoutClassName, "-is-children"), isChildrenLayout), (0, _defineProperty2.default)(_classNames, "".concat(proLayoutClassName, "-fix-siderbar"), fixSiderbar), (0, _defineProperty2.default)(_classNames, "".concat(proLayoutClassName, "-").concat(propsLayout), propsLayout), _classNames));
|
356 |
|
357 | var leftSiderWidth = getpaddingInlineStart(!!hasLeftPadding, collapsed, siderWidth);
|
358 |
|
359 | var genLayoutStyle = {
|
360 | position: 'relative'
|
361 | };
|
362 |
|
363 | if (isChildrenLayout || contentStyle && contentStyle.minHeight) {
|
364 | genLayoutStyle.minHeight = 0;
|
365 | }
|
366 |
|
367 | (0, _react.useEffect)(function () {
|
368 | var _props$onPageChange;
|
369 | (_props$onPageChange = props.onPageChange) === null || _props$onPageChange === void 0 ? void 0 : _props$onPageChange.call(props, props.location);
|
370 |
|
371 | }, [location.pathname, (_location$pathname = location.pathname) === null || _location$pathname === void 0 ? void 0 : _location$pathname.search]);
|
372 | var _useState3 = (0, _react.useState)(false),
|
373 | _useState4 = (0, _slicedToArray2.default)(_useState3, 2),
|
374 | hasFooterToolbar = _useState4[0],
|
375 | setHasFooterToolbar = _useState4[1];
|
376 | |
377 |
|
378 |
|
379 | var _useState5 = (0, _react.useState)(0),
|
380 | _useState6 = (0, _slicedToArray2.default)(_useState5, 2),
|
381 | hasPageContainer = _useState6[0],
|
382 | setHasPageContainer = _useState6[1];
|
383 | (0, _proUtils.useDocumentTitle)(pageTitleInfo, props.title || false);
|
384 | var bgImgStyleList = (0, _react.useMemo)(function () {
|
385 | if (bgLayoutImgList && bgLayoutImgList.length > 0) {
|
386 | return bgLayoutImgList.map(function (item, index) {
|
387 | return (0, _jsxRuntime.jsx)("img", {
|
388 | src: item.src,
|
389 | style: (0, _objectSpread2.default)({
|
390 | position: 'absolute'
|
391 | }, item)
|
392 | }, index);
|
393 | });
|
394 | }
|
395 | return null;
|
396 | }, [bgLayoutImgList]);
|
397 | var _useContext2 = (0, _react.useContext)(_proProvider.ProProvider),
|
398 | token = _useContext2.token;
|
399 | return wrapSSR((0, _jsxRuntime.jsx)(_RouteContext.RouteContext.Provider, {
|
400 | value: (0, _objectSpread2.default)((0, _objectSpread2.default)({}, defaultProps), {}, {
|
401 | breadcrumb: breadcrumbProps,
|
402 | menuData: menuData,
|
403 | isMobile: isMobile,
|
404 | collapsed: collapsed,
|
405 | hasPageContainer: hasPageContainer,
|
406 | setHasPageContainer: setHasPageContainer,
|
407 | isChildrenLayout: true,
|
408 | title: pageTitleInfo.pageName,
|
409 | hasSiderMenu: !!siderMenuDom,
|
410 | hasHeader: !!headerDom,
|
411 | siderWidth: leftSiderWidth,
|
412 | hasFooter: !!footerDom,
|
413 | hasFooterToolbar: hasFooterToolbar,
|
414 | setHasFooterToolbar: setHasFooterToolbar,
|
415 | pageTitleInfo: pageTitleInfo,
|
416 | matchMenus: matchMenus,
|
417 | matchMenuKeys: matchMenuKeys,
|
418 | currentMenu: currentMenu
|
419 | }),
|
420 | children: props.pure ? (0, _jsxRuntime.jsx)(_jsxRuntime.Fragment, {
|
421 | children: children
|
422 | }) : (0, _jsxRuntime.jsxs)("div", {
|
423 | className: className,
|
424 | children: [(0, _jsxRuntime.jsx)("div", {
|
425 | className: "".concat(proLayoutClassName, "-bg-list ").concat(hashId),
|
426 | children: bgImgStyleList
|
427 | }), (0, _jsxRuntime.jsxs)(_antd.Layout, {
|
428 | style: (0, _objectSpread2.default)({
|
429 | minHeight: '100%',
|
430 |
|
431 | flexDirection: siderMenuDom ? 'row' : undefined
|
432 | }, style),
|
433 | children: [siderMenuDom, (0, _jsxRuntime.jsxs)("div", {
|
434 | style: genLayoutStyle,
|
435 | className: "".concat(proLayoutClassName, "-container ").concat(hashId),
|
436 | children: [headerDom, (0, _jsxRuntime.jsx)(_WrapContent.WrapContent, (0, _objectSpread2.default)((0, _objectSpread2.default)({
|
437 | hasPageContainer: hasPageContainer,
|
438 | isChildrenLayout: isChildrenLayout
|
439 | }, rest), {}, {
|
440 | hasHeader: !!headerDom,
|
441 | prefixCls: proLayoutClassName,
|
442 | style: contentStyle,
|
443 | children: loading ? (0, _jsxRuntime.jsx)(_PageLoading.PageLoading, {}) : children
|
444 | })), footerDom, hasFooterToolbar && (0, _jsxRuntime.jsx)("div", {
|
445 | className: "".concat(proLayoutClassName, "-has-footer"),
|
446 | style: {
|
447 | height: 64,
|
448 | marginBlockStart: token === null || token === void 0 ? void 0 : (_token$layout = token.layout) === null || _token$layout === void 0 ? void 0 : (_token$layout$pageCon = _token$layout.pageContainer) === null || _token$layout$pageCon === void 0 ? void 0 : _token$layout$pageCon.paddingBlockPageContainerContent
|
449 | }
|
450 | })]
|
451 | })]
|
452 | })]
|
453 | })
|
454 | }));
|
455 | };
|
456 | BaseProLayout.defaultProps = (0, _objectSpread2.default)((0, _objectSpread2.default)({
|
457 | logo: (0, _jsxRuntime.jsx)(_Logo.Logo, {})
|
458 | }, _defaultSettings.defaultSettings), {}, {
|
459 | location: (0, _proUtils.isBrowser)() ? window.location : undefined
|
460 | });
|
461 | var ProLayout = function ProLayout(props) {
|
462 | var colorPrimary = props.colorPrimary;
|
463 | var darkProps = props.navTheme !== undefined ? {
|
464 | dark: props.navTheme === 'realDark'
|
465 | } : {};
|
466 | return (0, _jsxRuntime.jsx)(_antd.ConfigProvider, {
|
467 | theme: colorPrimary ? {
|
468 | token: {
|
469 | colorPrimary: colorPrimary
|
470 | }
|
471 | } : undefined,
|
472 | children: (0, _jsxRuntime.jsx)(_proProvider.ProConfigProvider, (0, _objectSpread2.default)((0, _objectSpread2.default)({
|
473 | autoClearCache: true
|
474 | }, darkProps), {}, {
|
475 | token: props.token,
|
476 | prefixCls: props.prefixCls,
|
477 | children: (0, _jsxRuntime.jsx)(BaseProLayout, (0, _objectSpread2.default)({}, props))
|
478 | }))
|
479 | });
|
480 | };
|
481 | exports.ProLayout = ProLayout; |
\ | No newline at end of file |