41 lines
1018 B
TypeScript
41 lines
1018 B
TypeScript
import { NextSeo } from 'next-seo';
|
|
import Head from 'next/head';
|
|
|
|
import { AppConfig } from '../utils/AppConfig';
|
|
|
|
type IMetaProps = {
|
|
title: string;
|
|
description: string;
|
|
canonical?: string;
|
|
};
|
|
|
|
const Meta = (props: IMetaProps) => {
|
|
return (
|
|
<>
|
|
<Head>
|
|
<meta charSet="UTF-8" key="charset" />
|
|
<meta
|
|
name="viewport"
|
|
content="width=device-width,initial-scale=1"
|
|
key="viewport"
|
|
/>
|
|
<link rel="icon" href="data:image/svg+xml,<svg xmlns=%22http://www.w3.org/2000/svg%22 viewBox=%220 0 100 100%22><text y=%22.9em%22 font-size=%2290%22>🗳</text></svg>" />
|
|
</Head>
|
|
<NextSeo
|
|
title={props.title}
|
|
description={props.description}
|
|
canonical={props.canonical}
|
|
openGraph={{
|
|
title: props.title,
|
|
description: props.description,
|
|
url: props.canonical,
|
|
locale: AppConfig.locale,
|
|
site_name: AppConfig.site_name,
|
|
}}
|
|
/>
|
|
</>
|
|
);
|
|
};
|
|
|
|
export { Meta };
|