summaryrefslogtreecommitdiffstats
path: root/src/components/molecules/layout/page-header.tsx
diff options
context:
space:
mode:
Diffstat (limited to 'src/components/molecules/layout/page-header.tsx')
-rw-r--r--src/components/molecules/layout/page-header.tsx25
1 files changed, 20 insertions, 5 deletions
diff --git a/src/components/molecules/layout/page-header.tsx b/src/components/molecules/layout/page-header.tsx
index 1663085..9abe9af 100644
--- a/src/components/molecules/layout/page-header.tsx
+++ b/src/components/molecules/layout/page-header.tsx
@@ -1,7 +1,7 @@
import Heading from '@components/atoms/headings/heading';
-import styles from './page-header.module.scss';
-import Meta, { type MetaMap } from './meta';
import { FC } from 'react';
+import Meta, { type MetaData } from './meta';
+import styles from './page-header.module.scss';
export type PageHeaderProps = {
/**
@@ -15,7 +15,7 @@ export type PageHeaderProps = {
/**
* The page metadata.
*/
- meta?: MetaMap;
+ meta?: MetaData;
/**
* The page title.
*/
@@ -33,14 +33,29 @@ const PageHeader: FC<PageHeaderProps> = ({
meta,
title,
}) => {
+ const getIntro = () => {
+ return typeof intro === 'string' ? (
+ <div dangerouslySetInnerHTML={{ __html: intro }} />
+ ) : (
+ <div>{intro}</div>
+ );
+ };
+
return (
<header className={`${styles.wrapper} ${className}`}>
<div className={styles.body}>
<Heading level={1} className={styles.title} withMargin={false}>
{title}
</Heading>
- {meta && <Meta data={meta} className={styles.meta} layout="inline" />}
- {intro && <div>{intro}</div>}
+ {meta && (
+ <Meta
+ data={meta}
+ className={styles.meta}
+ layout="column"
+ itemsLayout="inline"
+ />
+ )}
+ {intro && getIntro()}
</div>
</header>
);