2020-02-14 00:40:04 +00:00
|
|
|
import ColumnHeader from './column_header'
|
2020-02-04 15:50:18 +00:00
|
|
|
import Header from './header'
|
|
|
|
|
|
|
|
export default class PageLayout extends PureComponent {
|
|
|
|
static propTypes = {
|
|
|
|
layout: PropTypes.object,
|
2020-02-14 00:40:04 +00:00
|
|
|
title: PropTypes.string,
|
|
|
|
showBackBtn: PropTypes.boolean,
|
2020-02-05 22:45:48 +00:00
|
|
|
}
|
2020-02-04 15:50:18 +00:00
|
|
|
|
|
|
|
render() {
|
2020-02-14 00:40:04 +00:00
|
|
|
const { children, title, showBackBtn, layout } = this.props
|
2020-02-04 15:50:18 +00:00
|
|
|
|
2020-02-05 22:45:48 +00:00
|
|
|
const right = layout.RIGHT || null
|
2020-02-08 22:57:09 +00:00
|
|
|
const headerRight = layout.HEADER_RIGHT || null
|
2020-02-04 15:50:18 +00:00
|
|
|
|
|
|
|
return (
|
2020-02-08 06:12:01 +00:00
|
|
|
<div className={[styles.default, styles.flexRow, styles.width100PC, styles.backgroundColorSubtle3].join(' ')}>
|
2020-02-14 00:40:04 +00:00
|
|
|
|
2020-02-04 15:50:18 +00:00
|
|
|
<Header />
|
2020-02-14 00:40:04 +00:00
|
|
|
|
2020-02-08 22:57:09 +00:00
|
|
|
<main role='main' className={[styles.default, styles.flexShrink1, styles.flexGrow1, styles.borderColorSubtle2, styles.borderLeft1PX].join(' ')}>
|
2020-02-14 00:40:04 +00:00
|
|
|
|
|
|
|
<div className={[styles.default, styles.height53PX, styles.borderBottom1PX, styles.borderColorSubtle2, styles.backgroundColorSubtle3, styles.z3, styles.top0, styles.positionFixed].join(' ')}>
|
2020-02-08 22:57:09 +00:00
|
|
|
<div className={[styles.default, styles.height53PX, styles.paddingLeft15PX, styles.width1015PX, styles.flexRow, styles.justifyContentSpaceBetween].join(' ')}>
|
|
|
|
<div className={[styles.default, styles.width660PX].join(' ')}>
|
2020-02-14 00:40:04 +00:00
|
|
|
<ColumnHeader title={title} />
|
2020-02-08 22:57:09 +00:00
|
|
|
</div>
|
|
|
|
<div className={[styles.default, styles.width325PX].join(' ')}>
|
|
|
|
{ headerRight }
|
|
|
|
</div>
|
|
|
|
</div>
|
|
|
|
</div>
|
2020-02-14 00:40:04 +00:00
|
|
|
|
|
|
|
<div className={[styles.default, styles.height53PX].join(' ')}></div>
|
|
|
|
|
2020-02-08 22:57:09 +00:00
|
|
|
<div className={[styles.default, styles.width1015PX, styles.flexRow, styles.justifyContentSpaceBetween, styles.paddingLeft15PX, styles.paddingVertical15PX].join(' ')}>
|
|
|
|
<div className={[styles.default, styles.width660PX, styles.z1].join(' ')}>
|
2020-02-04 15:50:18 +00:00
|
|
|
<div className={styles.default}>
|
|
|
|
{children}
|
|
|
|
</div>
|
|
|
|
</div>
|
2020-02-14 00:40:04 +00:00
|
|
|
|
2020-02-05 22:45:48 +00:00
|
|
|
<div className={[styles.default, styles.width325PX].join(' ')}>
|
2020-02-04 15:50:18 +00:00
|
|
|
<div className={styles.default}>
|
|
|
|
{right}
|
|
|
|
</div>
|
|
|
|
</div>
|
|
|
|
</div>
|
2020-02-14 00:40:04 +00:00
|
|
|
|
2020-02-04 15:50:18 +00:00
|
|
|
</main>
|
2020-02-14 00:40:04 +00:00
|
|
|
|
2020-02-04 15:50:18 +00:00
|
|
|
</div>
|
|
|
|
)
|
|
|
|
}
|
|
|
|
|
|
|
|
}
|