iglooform 2.3.9 → 2.3.13

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -4,7 +4,7 @@ import './style';
4
4
  interface Menu {
5
5
  title: string;
6
6
  key: string;
7
- badge?: 'dot' | number | BadgeProps | (() => any);
7
+ badge?: 'dot' | number | string | BadgeProps | (() => any) | string;
8
8
  }
9
9
  interface Info {
10
10
  title: string;
@@ -14,30 +14,38 @@ interface Action {
14
14
  title: string;
15
15
  onClick?: () => void;
16
16
  }
17
- interface ILayout {
17
+ interface HeaderConfig {
18
+ menus?: Menu[];
19
+ defaultSelected?: string;
20
+ selectedKey?: string;
21
+ onMenuChange?: (menuItem: any) => any;
22
+ dropMenuConfig?: {
23
+ customInfos: Info[];
24
+ actions: Action[];
25
+ };
26
+ userName?: string;
27
+ userAvatar?: string;
28
+ }
29
+ interface FooterConfig {
30
+ companyInfoRender?: () => any;
31
+ copyRightRender?: (origin: ReactNode) => any;
32
+ tel?: string;
33
+ email?: string;
34
+ workTime?: any;
35
+ address?: string;
36
+ }
37
+ interface layoutType {
18
38
  className?: string;
19
39
  style?: CSSProperties;
20
- headerConfig?: {
21
- menus?: Menu[];
22
- defaultSelected?: string;
23
- selectedKey?: string;
24
- onMenuChange?: (mentItem: any) => any;
25
- dropMenuConfig?: {
26
- customInfos: Info[];
27
- actions: Action[];
28
- };
29
- userName?: string;
30
- userAvatar?: string;
31
- };
32
- footerConfig?: {
33
- companyInfoRender?: () => any;
34
- copyRightRender?: (origin: ReactNode) => any;
35
- tel?: string;
36
- email?: string;
37
- workTime?: any;
38
- address?: string;
39
- };
40
40
  withFixedPanel?: boolean;
41
+ headerConfig?: HeaderConfig;
42
+ footerConfig?: FooterConfig;
43
+ }
44
+ declare type HeaderFunction = (props: HeaderConfig) => any;
45
+ declare type FooterFunction = (props: FooterConfig) => any;
46
+ interface ILayout extends FC<layoutType> {
47
+ Header: HeaderFunction;
48
+ Footer: FooterFunction;
41
49
  }
42
- declare const Layout: FC<ILayout>;
50
+ declare const Layout: ILayout;
43
51
  export default Layout;
@@ -5,89 +5,29 @@ Object.defineProperty(exports, "__esModule", {
5
5
  });
6
6
  exports.default = void 0;
7
7
 
8
- require("antd/es/avatar/style");
9
-
10
- var _avatar = _interopRequireDefault(require("antd/es/avatar"));
11
-
12
- require("antd/es/col/style");
13
-
14
- var _col = _interopRequireDefault(require("antd/es/col"));
15
-
16
- require("antd/es/row/style");
17
-
18
- var _row = _interopRequireDefault(require("antd/es/row"));
19
-
20
- require("antd/es/space/style");
21
-
22
- var _space = _interopRequireDefault(require("antd/es/space"));
23
-
24
- require("antd/es/badge/style");
25
-
26
- var _badge = _interopRequireDefault(require("antd/es/badge"));
27
-
28
8
  require("antd/es/grid/style");
29
9
 
30
10
  var _grid = _interopRequireDefault(require("antd/es/grid"));
31
11
 
32
12
  var _jsxRuntime = require("react/jsx-runtime");
33
13
 
34
- var _react = require("react");
35
-
36
- var _typography = _interopRequireDefault(require("../typography"));
37
-
38
14
  var _classnames = _interopRequireDefault(require("classnames"));
39
15
 
40
- var _iglooicon = require("iglooicon");
41
-
42
- var _index = _interopRequireDefault(require("../home-menu/index"));
16
+ var _header = _interopRequireDefault(require("./header"));
43
17
 
44
- var _avatar2 = _interopRequireDefault(require("./style/avatar.svg"));
45
-
46
- var _button = _interopRequireDefault(require("../button"));
18
+ var _footer = _interopRequireDefault(require("./footer"));
47
19
 
48
20
  require("./style");
49
21
 
50
22
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
51
23
 
52
- function _typeof(obj) { "@babel/helpers - typeof"; if (typeof Symbol === "function" && typeof Symbol.iterator === "symbol") { _typeof = function _typeof(obj) { return typeof obj; }; } else { _typeof = function _typeof(obj) { return obj && typeof Symbol === "function" && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }; } return _typeof(obj); }
53
-
54
- function _slicedToArray(arr, i) { return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest(); }
55
-
56
- function _nonIterableRest() { throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); }
57
-
58
- function _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === "string") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === "Object" && o.constructor) n = o.constructor.name; if (n === "Map" || n === "Set") return Array.from(o); if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }
59
-
60
- function _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) { arr2[i] = arr[i]; } return arr2; }
61
-
62
- function _iterableToArrayLimit(arr, i) { var _i = arr == null ? null : typeof Symbol !== "undefined" && arr[Symbol.iterator] || arr["@@iterator"]; if (_i == null) return; var _arr = []; var _n = true; var _d = false; var _s, _e; try { for (_i = _i.call(arr); !(_n = (_s = _i.next()).done); _n = true) { _arr.push(_s.value); if (i && _arr.length === i) break; } } catch (err) { _d = true; _e = err; } finally { try { if (!_n && _i["return"] != null) _i["return"](); } finally { if (_d) throw _e; } } return _arr; }
63
-
64
- function _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }
65
-
66
24
  var Layout = function Layout(props) {
67
25
  var className = props.className,
68
26
  style = props.style,
69
- _props$headerConfig = props.headerConfig,
70
- headerConfig = _props$headerConfig === void 0 ? {} : _props$headerConfig,
71
- _props$footerConfig = props.footerConfig,
72
- footerConfig = _props$footerConfig === void 0 ? {} : _props$footerConfig,
73
- children = props.children,
74
- withFixedPanel = props.withFixedPanel;
75
- var _headerConfig$menus = headerConfig.menus,
76
- menus = _headerConfig$menus === void 0 ? [] : _headerConfig$menus,
77
- userName = headerConfig.userName,
78
- _headerConfig$userAva = headerConfig.userAvatar,
79
- userAvatar = _headerConfig$userAva === void 0 ? _avatar2.default : _headerConfig$userAva,
80
- _headerConfig$default = headerConfig.defaultSelected,
81
- defaultSelected = _headerConfig$default === void 0 ? '' : _headerConfig$default,
82
- onMenuChange = headerConfig.onMenuChange,
83
- dropMenuConfig = headerConfig.dropMenuConfig,
84
- selectedKey = headerConfig.selectedKey;
85
- var companyInfoRender = footerConfig.companyInfoRender,
86
- copyRightRender = footerConfig.copyRightRender,
87
- tel = footerConfig.tel,
88
- email = footerConfig.email,
89
- workTime = footerConfig.workTime,
90
- address = footerConfig.address;
27
+ headerConfig = props.headerConfig,
28
+ footerConfig = props.footerConfig,
29
+ withFixedPanel = props.withFixedPanel,
30
+ children = props.children;
91
31
  var useBreakpoint = _grid.default.useBreakpoint;
92
32
 
93
33
  var _useBreakpoint = useBreakpoint(),
@@ -95,32 +35,14 @@ var Layout = function Layout(props) {
95
35
  lg = _useBreakpoint.lg,
96
36
  xl = _useBreakpoint.xl;
97
37
 
98
- var _useState = (0, _react.useState)(defaultSelected),
99
- _useState2 = _slicedToArray(_useState, 2),
100
- activeMenu = _useState2[0],
101
- setActiveMenu = _useState2[1];
102
-
103
- var _useState3 = (0, _react.useState)(selectedKey),
104
- _useState4 = _slicedToArray(_useState3, 2),
105
- selectedMenu = _useState4[0],
106
- setSelectedMenu = _useState4[1];
107
-
108
- (0, _react.useEffect)(function () {
109
- if (selectedKey) {
110
- setSelectedMenu(selectedKey);
111
- }
112
- }, [selectedKey]);
113
-
114
- var defaultMenuOnClick = function defaultMenuOnClick(menuConfig) {
115
- var key = menuConfig.key;
116
- setActiveMenu(key);
117
- };
118
-
119
38
  var mobile = !md;
120
39
  var smallPC = !lg && md;
121
40
  var middlePC = !xl && lg;
122
41
  var bigPC = xl;
123
42
  var layoutContainerClass = '';
43
+ var contentDom = null;
44
+ var headerDom = null;
45
+ var footerDom = null;
124
46
 
125
47
  if (mobile) {
126
48
  layoutContainerClass = (0, _classnames.default)({
@@ -141,303 +63,55 @@ var Layout = function Layout(props) {
141
63
  layoutContainerClass = 'igloo-customer-layout-big';
142
64
  }
143
65
 
144
- function getMenuDom(activeMenu, menuInfo) {
145
- var badge = menuInfo.badge;
66
+ switch (Object.prototype.toString.call(children)) {
67
+ case '[object Object]':
68
+ // @ts-ignore
69
+ if ((children === null || children === void 0 ? void 0 : children.type.displayName) === 'LayoutHeader') {
70
+ headerDom = children;
71
+ break;
72
+ } //@ts-ignore
146
73
 
147
- switch (_typeof(badge)) {
148
- case 'string':
149
- return (0, _jsxRuntime.jsxs)(_jsxRuntime.Fragment, {
150
- children: [(0, _jsxRuntime.jsx)(_typography.default, Object.assign({
151
- className: (0, _classnames.default)({
152
- 'active-menu': activeMenu === menuInfo.key
153
- }),
154
- level: activeMenu === menuInfo.key ? 'h4' : 'body1'
155
- }, {
156
- children: menuInfo.title
157
- }), void 0), (0, _jsxRuntime.jsx)(_badge.default, {
158
- dot: true,
159
- color: '#F52209'
160
- }, void 0)]
161
- }, void 0);
162
74
 
163
- case 'number':
164
- return (0, _jsxRuntime.jsxs)(_jsxRuntime.Fragment, {
165
- children: [(0, _jsxRuntime.jsx)(_typography.default, Object.assign({
166
- className: (0, _classnames.default)({
167
- 'active-menu': activeMenu === menuInfo.key
168
- }),
169
- level: activeMenu === menuInfo.key ? 'h4' : 'body1'
170
- }, {
171
- children: menuInfo.title
172
- }), void 0), (0, _jsxRuntime.jsx)(_badge.default, {
173
- count: badge,
174
- style: {
175
- backgroundColor: '#F52209'
176
- }
177
- }, void 0)]
178
- }, void 0);
75
+ if ((children === null || children === void 0 ? void 0 : children.type.displayName) === 'LayoutFooter') {
76
+ footerDom = children;
77
+ break;
78
+ }
179
79
 
180
- case 'object':
181
- return (0, _jsxRuntime.jsxs)(_jsxRuntime.Fragment, {
182
- children: [(0, _jsxRuntime.jsx)(_typography.default, Object.assign({
183
- className: (0, _classnames.default)({
184
- 'active-menu': activeMenu === menuInfo.key
185
- }),
186
- level: activeMenu === menuInfo.key ? 'h4' : 'body1'
187
- }, {
188
- children: menuInfo.title
189
- }), void 0), (0, _jsxRuntime.jsx)(_badge.default, Object.assign({}, badge), void 0)]
190
- }, void 0);
80
+ contentDom = children;
81
+ break;
191
82
 
192
- case 'undefined':
193
- return (0, _jsxRuntime.jsx)(_typography.default, Object.assign({
194
- className: (0, _classnames.default)({
195
- 'active-menu': activeMenu === menuInfo.key
196
- }),
197
- level: activeMenu === menuInfo.key ? 'h4' : 'body1'
198
- }, {
199
- children: menuInfo.title
200
- }), void 0);
83
+ case '[object Array]':
84
+ //@ts-ignore
85
+ contentDom = children.filter(function (dom) {
86
+ if (dom.type) {
87
+ if (dom.type.displayName === 'LayoutHeader') headerDom = dom;
88
+ if (dom.type.displayName === 'LayoutFooter') footerDom = dom;
89
+ return dom.type.displayName !== 'LayoutHeader' && dom.type.displayName !== 'LayoutFooter';
90
+ } // 希望所有的dom都被返回,处理一下dom=数字0这种情况
201
91
 
202
- case 'function':
203
- return (0, _jsxRuntime.jsxs)(_jsxRuntime.Fragment, {
204
- children: [(0, _jsxRuntime.jsx)(_typography.default, Object.assign({
205
- className: (0, _classnames.default)({
206
- 'active-menu': activeMenu === menuInfo.key
207
- }),
208
- level: activeMenu === menuInfo.key ? 'h4' : 'body1'
209
- }, {
210
- children: menuInfo.title
211
- }), void 0), badge()]
212
- }, void 0);
213
- }
214
- }
215
92
 
216
- var topRightContent = companyInfoRender ? companyInfoRender() : (0, _jsxRuntime.jsxs)(_jsxRuntime.Fragment, {
217
- children: [(0, _jsxRuntime.jsxs)("div", Object.assign({
218
- className: "no-address-info"
219
- }, {
220
- children: [tel && (0, _jsxRuntime.jsxs)("div", Object.assign({
221
- className: "info-container",
222
- style: {
223
- alignItems: 'center'
224
- }
225
- }, {
226
- children: [(0, _jsxRuntime.jsx)(_iglooicon.PhoneOutlined, {}, void 0), (0, _jsxRuntime.jsx)("div", {
227
- children: typeof tel === 'string' ? (0, _jsxRuntime.jsx)(_typography.default, Object.assign({
228
- level: "body2",
229
- className: "info-span"
230
- }, {
231
- children: tel
232
- }), void 0) : tel
233
- }, void 0)]
234
- }), void 0), email && (0, _jsxRuntime.jsxs)("div", Object.assign({
235
- className: "info-container",
236
- style: {
237
- alignItems: 'center'
238
- }
239
- }, {
240
- children: [(0, _jsxRuntime.jsx)(_iglooicon.EmailOutlined, {}, void 0), (0, _jsxRuntime.jsx)("div", {
241
- children: typeof email === 'string' ? (0, _jsxRuntime.jsx)(_typography.default, Object.assign({
242
- level: "body2",
243
- className: "info-span"
244
- }, {
245
- children: email
246
- }), void 0) : email
247
- }, void 0)]
248
- }), void 0), workTime && (0, _jsxRuntime.jsxs)("div", Object.assign({
249
- className: "info-container"
250
- }, {
251
- children: [(0, _jsxRuntime.jsx)(_iglooicon.TimeOutlined, {}, void 0), (0, _jsxRuntime.jsx)("div", {
252
- children: typeof workTime === 'string' ? (0, _jsxRuntime.jsx)(_typography.default, Object.assign({
253
- level: "body2",
254
- className: "info-span"
255
- }, {
256
- children: workTime
257
- }), void 0) : workTime
258
- }, void 0)]
259
- }), void 0)]
260
- }), void 0), address && (0, _jsxRuntime.jsxs)(_space.default, Object.assign({
261
- size: 16,
262
- align: "start"
263
- }, {
264
- children: [(0, _jsxRuntime.jsx)(_iglooicon.LocationOutlined, {
265
- style: {
266
- fontSize: 24
267
- }
268
- }, void 0), (0, _jsxRuntime.jsx)("div", {
269
- children: typeof address === 'string' ? (0, _jsxRuntime.jsx)(_typography.default, Object.assign({
270
- level: "body2",
271
- className: "info-span"
272
- }, {
273
- children: address
274
- }), void 0) : address
275
- }, void 0)]
276
- }), void 0)]
277
- }, void 0);
93
+ return dom !== false;
94
+ });
95
+ break;
96
+
97
+ default:
98
+ contentDom = children;
99
+ }
278
100
 
279
101
  if (!md) {
280
102
  return (0, _jsxRuntime.jsxs)("div", Object.assign({
281
103
  style: style,
282
104
  className: (0, _classnames.default)(layoutContainerClass, className)
283
105
  }, {
284
- children: [(0, _jsxRuntime.jsxs)("div", Object.assign({
285
- className: (0, _classnames.default)({
286
- 'igloo-layout-header': true,
287
- 'igloo-layout-header-fix': Boolean(menus === null || menus === void 0 ? void 0 : menus.length) || Boolean(dropMenuConfig)
288
- })
289
- }, {
290
- children: [(0, _jsxRuntime.jsx)("div", {
291
- className: "igloo-logo"
292
- }, void 0), dropMenuConfig && (0, _jsxRuntime.jsx)(_index.default, Object.assign({
293
- userAvatar: userAvatar,
294
- userName: userName
295
- }, dropMenuConfig), void 0)]
296
- }), void 0), Boolean(menus === null || menus === void 0 ? void 0 : menus.length) && (0, _jsxRuntime.jsx)(_row.default, Object.assign({
297
- className: "igloo-layout-menu"
298
- }, {
299
- children: menus.map(function (menu) {
300
- var span = 24 / menus.length;
301
- return (0, _jsxRuntime.jsx)(_col.default, Object.assign({
302
- span: span,
303
- className: (0, _classnames.default)('menu-item'),
304
- onClick: function onClick() {
305
- onMenuChange ? onMenuChange(menu) : defaultMenuOnClick(menu);
306
- }
307
- }, {
308
- children: (0, _jsxRuntime.jsx)("div", Object.assign({
309
- style: {
310
- display: 'flex',
311
- alignItems: 'flex-start'
312
- }
313
- }, {
314
- children: getMenuDom(selectedMenu || activeMenu, menu)
315
- }), void 0)
316
- }), menu.key);
317
- })
318
- }), void 0), (0, _jsxRuntime.jsx)("div", Object.assign({
106
+ children: [headerConfig && (0, _jsxRuntime.jsx)(_header.default, Object.assign({}, headerConfig), void 0), headerDom, (0, _jsxRuntime.jsx)("div", Object.assign({
319
107
  className: "igloo-layout-center"
320
108
  }, {
321
109
  children: (0, _jsxRuntime.jsx)("div", Object.assign({
322
110
  className: "igloo-layout-content"
323
111
  }, {
324
- children: children
112
+ children: contentDom
325
113
  }), void 0)
326
- }), void 0), (0, _jsxRuntime.jsx)("div", Object.assign({
327
- className: "igloo-layout-footer"
328
- }, {
329
- children: (0, _jsxRuntime.jsxs)("div", Object.assign({
330
- className: "footer-content"
331
- }, {
332
- children: [(0, _jsxRuntime.jsx)("div", {
333
- className: "igloo-logo"
334
- }, void 0), (0, _jsxRuntime.jsxs)("div", Object.assign({
335
- className: "compony-info"
336
- }, {
337
- children: [tel && (0, _jsxRuntime.jsxs)("div", Object.assign({
338
- className: "info-item"
339
- }, {
340
- children: [(0, _jsxRuntime.jsx)(_iglooicon.PhoneOutlined, {}, void 0), (0, _jsxRuntime.jsx)("div", {
341
- children: typeof tel === 'string' ? (0, _jsxRuntime.jsx)(_typography.default, Object.assign({
342
- level: "body3",
343
- className: "info-span"
344
- }, {
345
- children: tel
346
- }), void 0) : tel
347
- }, void 0)]
348
- }), void 0), email && (0, _jsxRuntime.jsxs)("div", Object.assign({
349
- className: "info-item"
350
- }, {
351
- children: [(0, _jsxRuntime.jsx)(_iglooicon.EmailOutlined, {}, void 0), (0, _jsxRuntime.jsx)("div", {
352
- children: typeof email === 'string' ? (0, _jsxRuntime.jsx)(_typography.default, Object.assign({
353
- level: "body3",
354
- className: "info-span"
355
- }, {
356
- children: email
357
- }), void 0) : email
358
- }, void 0)]
359
- }), void 0), workTime && (0, _jsxRuntime.jsxs)("div", Object.assign({
360
- className: "info-item"
361
- }, {
362
- children: [(0, _jsxRuntime.jsx)(_iglooicon.TimeOutlined, {}, void 0), (0, _jsxRuntime.jsx)("div", {
363
- children: typeof workTime === 'string' ? (0, _jsxRuntime.jsx)(_typography.default, Object.assign({
364
- level: "body3",
365
- className: "info-span"
366
- }, {
367
- children: workTime
368
- }), void 0) : workTime
369
- }, void 0)]
370
- }), void 0), address && (0, _jsxRuntime.jsxs)("div", Object.assign({
371
- className: "info-item"
372
- }, {
373
- children: [(0, _jsxRuntime.jsx)(_iglooicon.LocationOutlined, {
374
- style: {
375
- fontSize: 24
376
- }
377
- }, void 0), (0, _jsxRuntime.jsx)("div", {
378
- children: typeof address === 'string' ? (0, _jsxRuntime.jsx)(_typography.default, Object.assign({
379
- level: "body3",
380
- className: "info-span"
381
- }, {
382
- children: address
383
- }), void 0) : address
384
- }, void 0)]
385
- }), void 0)]
386
- }), void 0), (0, _jsxRuntime.jsxs)("div", Object.assign({
387
- className: "footer-bottom"
388
- }, {
389
- children: [(0, _jsxRuntime.jsx)("div", {
390
- children: copyRightRender ? copyRightRender((0, _jsxRuntime.jsxs)("div", {
391
- children: [(0, _jsxRuntime.jsxs)("div", {
392
- children: ["\xA9 ", new Date().getFullYear(), " Powered by Axinan Pte Ltd."]
393
- }, void 0), (0, _jsxRuntime.jsx)("div", {
394
- children: "All Rights Reserved."
395
- }, void 0)]
396
- }, void 0)) : (0, _jsxRuntime.jsxs)(_typography.default, Object.assign({
397
- level: "body3"
398
- }, {
399
- children: ["\xA9 ".concat(new Date().getFullYear(), " Powered by Axinan Pte Ltd."), (0, _jsxRuntime.jsx)("div", {
400
- children: "All Rights Reserved."
401
- }, void 0)]
402
- }), void 0)
403
- }, void 0), (0, _jsxRuntime.jsx)("div", {
404
- children: (0, _jsxRuntime.jsxs)(_typography.default, Object.assign({
405
- level: "body3"
406
- }, {
407
- children: [(0, _jsxRuntime.jsx)(_button.default, Object.assign({
408
- type: "text",
409
- onClick: function onClick() {
410
- return window.open('https://contents.iglooinsure.com/privacypolicy');
411
- }
412
- }, {
413
- children: (0, _jsxRuntime.jsx)(_typography.default, Object.assign({
414
- level: "body3"
415
- }, {
416
- children: "Privacy Policy"
417
- }), void 0)
418
- }), void 0), ' ', (0, _jsxRuntime.jsx)("span", Object.assign({
419
- style: {
420
- margin: '0px 16px'
421
- }
422
- }, {
423
- children: "|"
424
- }), void 0), ' ', (0, _jsxRuntime.jsx)(_button.default, Object.assign({
425
- type: "text",
426
- onClick: function onClick() {
427
- return window.open('https://contents.iglooinsure.com/termsofservice');
428
- }
429
- }, {
430
- children: (0, _jsxRuntime.jsx)(_typography.default, Object.assign({
431
- level: "body3"
432
- }, {
433
- children: "Terms of Service"
434
- }), void 0)
435
- }), void 0)]
436
- }), void 0)
437
- }, void 0)]
438
- }), void 0)]
439
- }), void 0)
440
- }), void 0)]
114
+ }), void 0), footerConfig && (0, _jsxRuntime.jsx)(_footer.default, Object.assign({}, footerConfig), void 0), footerDom]
441
115
  }), void 0);
442
116
  }
443
117
 
@@ -445,121 +119,19 @@ var Layout = function Layout(props) {
445
119
  style: style,
446
120
  className: (0, _classnames.default)(layoutContainerClass, className)
447
121
  }, {
448
- children: [(0, _jsxRuntime.jsx)("div", Object.assign({
449
- className: (0, _classnames.default)({
450
- 'igloo-layout-header': true,
451
- 'igloo-layout-header-fix': Boolean(menus === null || menus === void 0 ? void 0 : menus.length) || Boolean(dropMenuConfig)
452
- })
453
- }, {
454
- children: (0, _jsxRuntime.jsxs)("div", Object.assign({
455
- className: "header-content"
456
- }, {
457
- children: [(0, _jsxRuntime.jsxs)("div", Object.assign({
458
- className: "header-left"
459
- }, {
460
- children: [(0, _jsxRuntime.jsx)("div", {
461
- className: "igloo-logo"
462
- }, void 0), Boolean(menus === null || menus === void 0 ? void 0 : menus.length) && (0, _jsxRuntime.jsx)(_row.default, {
463
- children: menus.map(function (menu) {
464
- return (0, _jsxRuntime.jsx)(_col.default, Object.assign({
465
- className: (0, _classnames.default)('menu-item'),
466
- onClick: function onClick() {
467
- onMenuChange ? onMenuChange(menu) : defaultMenuOnClick(menu);
468
- }
469
- }, {
470
- children: getMenuDom(selectedMenu || activeMenu, menu)
471
- }), menu.key);
472
- })
473
- }, void 0)]
474
- }), void 0), dropMenuConfig && (0, _jsxRuntime.jsxs)(_space.default, Object.assign({
475
- size: 8
476
- }, {
477
- children: [(0, _jsxRuntime.jsx)(_avatar.default, {
478
- size: 32,
479
- src: userAvatar
480
- }, void 0), (0, _jsxRuntime.jsx)(_typography.default, Object.assign({
481
- level: "body1",
482
- style: {
483
- color: '#666666'
484
- }
485
- }, {
486
- children: userName
487
- }), void 0), dropMenuConfig && (0, _jsxRuntime.jsx)(_index.default, Object.assign({}, dropMenuConfig), void 0)]
488
- }), void 0)]
489
- }), void 0)
490
- }), void 0), (0, _jsxRuntime.jsx)("div", Object.assign({
122
+ children: [headerConfig && (0, _jsxRuntime.jsx)(_header.default, Object.assign({}, headerConfig), void 0), headerDom, (0, _jsxRuntime.jsx)("div", Object.assign({
491
123
  className: "igloo-layout-center"
492
124
  }, {
493
125
  children: (0, _jsxRuntime.jsx)("div", Object.assign({
494
126
  className: "igloo-layout-content"
495
127
  }, {
496
- children: children
497
- }), void 0)
498
- }), void 0), (0, _jsxRuntime.jsx)("div", Object.assign({
499
- className: "igloo-layout-footer"
500
- }, {
501
- children: (0, _jsxRuntime.jsxs)("div", Object.assign({
502
- className: "footer-content"
503
- }, {
504
- children: [(0, _jsxRuntime.jsxs)(_space.default, Object.assign({
505
- size: 32,
506
- align: "start",
507
- className: "footer-top"
508
- }, {
509
- children: [(0, _jsxRuntime.jsx)("div", Object.assign({
510
- className: "top-left"
511
- }, {
512
- children: (0, _jsxRuntime.jsx)("div", {
513
- className: "igloo-logo"
514
- }, void 0)
515
- }), void 0), topRightContent]
516
- }), void 0), (0, _jsxRuntime.jsx)("div", {
517
- className: "footer-divider"
518
- }, void 0), (0, _jsxRuntime.jsxs)("div", Object.assign({
519
- className: "footer-bottom"
520
- }, {
521
- children: [copyRightRender ? copyRightRender("\xA9 ".concat(new Date().getFullYear(), " Powered by Axinan Pte Ltd. All Rights Reserved.")) : (0, _jsxRuntime.jsx)(_typography.default, Object.assign({
522
- level: "body3"
523
- }, {
524
- children: "\xA9 ".concat(new Date().getFullYear(), " Powered by Axinan Pte Ltd. All Rights Reserved.")
525
- }), void 0), (0, _jsxRuntime.jsxs)(_typography.default, Object.assign({
526
- level: "body3"
527
- }, {
528
- children: [(0, _jsxRuntime.jsx)(_button.default, Object.assign({
529
- type: "text",
530
- onClick: function onClick() {
531
- return window.open('https://contents.iglooinsure.com/privacypolicy');
532
- }
533
- }, {
534
- children: (0, _jsxRuntime.jsx)(_typography.default, Object.assign({
535
- level: "body3"
536
- }, {
537
- children: "Privacy Policy"
538
- }), void 0)
539
- }), void 0), ' ', (0, _jsxRuntime.jsx)("span", Object.assign({
540
- style: {
541
- margin: '0px 16px'
542
- }
543
- }, {
544
- children: "|"
545
- }), void 0), (0, _jsxRuntime.jsx)(_button.default, Object.assign({
546
- type: "text",
547
- onClick: function onClick() {
548
- return window.open('https://contents.iglooinsure.com/termsofservice');
549
- }
550
- }, {
551
- children: (0, _jsxRuntime.jsx)(_typography.default, Object.assign({
552
- level: "body3"
553
- }, {
554
- children: "Terms of Service"
555
- }), void 0)
556
- }), void 0)]
557
- }), void 0)]
558
- }), void 0)]
128
+ children: contentDom
559
129
  }), void 0)
560
- }), void 0)]
130
+ }), void 0), footerConfig && (0, _jsxRuntime.jsx)(_footer.default, Object.assign({}, footerConfig), void 0), footerDom]
561
131
  }), void 0);
562
132
  };
563
133
 
134
+ Layout.Header = _header.default;
135
+ Layout.Footer = _footer.default;
564
136
  var _default = Layout;
565
137
  exports.default = _default;