import type { ReactNode } from 'react'; import styles from './PageViewLayout.module.scss'; const pageViewLayoutClass = styles['page-view-layout'] ?? ''; const _fluidLayoutClass = styles['fluid-layout'] ?? ''; type Props = { className?: string, children?: ReactNode, headerContents?: ReactNode, sideContents?: ReactNode, footerContents?: ReactNode, expandContentWidth?: boolean, } export const PageViewLayout = (props: Props): JSX.Element => { const { className, children, headerContents, sideContents, footerContents, expandContentWidth, } = props; const fluidLayoutClass = expandContentWidth ? _fluidLayoutClass : ''; return ( <>
{ headerContents != null && headerContents } { sideContents != null ? (
{children}
{sideContents}
) : (
{children}
) }
{ footerContents != null && ( ) } ); };