"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;
