gatsby-theme-zh
Version:
74 lines (73 loc) • 2.25 kB
JavaScript
"use strict";
/**
* SEO component that queries for data with
* Gatsby's useStaticQuery React hook
*
* See: https://www.gatsbyjs.org/docs/use-static-query/
*/
var __importDefault = (this && this.__importDefault) || function (mod) {
return (mod && mod.__esModule) ? mod : { "default": mod };
};
Object.defineProperty(exports, "__esModule", { value: true });
const react_1 = __importDefault(require("react"));
const react_helmet_1 = require("react-helmet");
const gatsby_1 = require("gatsby");
const SEO = ({ description, lang = '', meta = [], title, titleSuffix, }) => {
const { site } = gatsby_1.useStaticQuery(gatsby_1.graphql `
query {
site {
siteMetadata {
title
description
}
}
}
`);
const metaDescription = description || site.siteMetadata.description;
return (react_1.default.createElement(react_helmet_1.Helmet, { htmlAttributes: {
lang,
}, title: title, titleTemplate: `%s | ${titleSuffix || site.siteMetadata.title}`, meta: [
{
name: `description`,
content: metaDescription,
},
{
property: `og:title`,
content: title,
},
{
property: `og:description`,
content: metaDescription,
},
{
property: `og:image`,
content: 'https://gw.alipayobjects.com/zos/antfincdn/FLrTNDvlna/antv.png',
},
{
property: `og:type`,
content: `website`,
},
{
name: `twitter:card`,
content: `summary`,
},
{
name: `twitter:title`,
content: title,
},
{
name: `twitter:description`,
content: metaDescription,
},
{
property: `twitter:image`,
content: 'https://gw.alipayobjects.com/zos/antfincdn/FLrTNDvlna/antv.png',
},
].concat(meta) }));
};
SEO.defaultProps = {
lang: `en`,
meta: [],
description: ``,
};
exports.default = SEO;