UNPKG

gatsby-theme-advanced

Version:
30 lines (29 loc) 1.32 kB
"use strict"; 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 TwitterTags = ({ seoData, userData, websiteData, }) => { const { title, description, imageUrl, imageAlt } = seoData; const userTwitterName = userData === null || userData === void 0 ? void 0 : userData.twitterName; const siteTwitterName = websiteData.twitterName; const tagList = []; // This function acts as a type guard to prevent undefined content from being added const addTag = (name, content) => { tagList.push(<meta name={name} content={content}/>); }; addTag("twitter:card", "summary_large_image"); addTag("twitter:title", title); if (description) addTag("twitter:description", description); if (imageUrl) addTag("twitter:image", imageUrl); addTag("twitter:image:alt", imageAlt); if (userTwitterName) addTag("twitter:creator", userTwitterName); if (siteTwitterName) addTag("twitter:site", siteTwitterName); return tagList.map((tag) => (Object.assign(Object.assign({}, tag), { key: tag.props.name }))); }; exports.default = TwitterTags;