refactor: share console page header
This commit is contained in:
@@ -0,0 +1,32 @@
|
||||
import type { CSSProperties, ReactNode } from 'react';
|
||||
|
||||
type PageHeaderProps = {
|
||||
title: ReactNode;
|
||||
subtitle?: ReactNode;
|
||||
actions?: ReactNode;
|
||||
className?: string;
|
||||
style?: CSSProperties;
|
||||
titleAs?: 'h1' | 'h2';
|
||||
};
|
||||
|
||||
export default function PageHeader({
|
||||
title,
|
||||
subtitle,
|
||||
actions,
|
||||
className = '',
|
||||
style,
|
||||
titleAs = 'h2',
|
||||
}: PageHeaderProps) {
|
||||
const Heading = titleAs;
|
||||
const classes = ['page-header', className].filter(Boolean).join(' ');
|
||||
|
||||
return (
|
||||
<div className={classes} style={style}>
|
||||
<div className="page-header-copy">
|
||||
<Heading className="page-title">{title}</Heading>
|
||||
{subtitle ? <div className="page-subtitle">{subtitle}</div> : null}
|
||||
</div>
|
||||
{actions ? <div className="page-actions">{actions}</div> : null}
|
||||
</div>
|
||||
);
|
||||
}
|
||||
Reference in New Issue
Block a user