gatsby-plugin-next-seo
Version:
SEO plugin for Gatsby projects
48 lines (39 loc) • 2.14 kB
JavaScript
"use strict";
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.CorporateContactJsonLd = void 0;
var _react = _interopRequireDefault(require("react"));
var _reactHelmetAsync = require("react-helmet-async");
var formatIfArray = function formatIfArray(value) {
return Array.isArray(value) ? "[".concat(value.map(function (val) {
return "\"".concat(val, "\"");
}).toString(), "]") : "\"".concat(value, "\"");
};
var buildContactPoint = function buildContactPoint(contactPoint) {
return contactPoint.map(function (contact) {
return "{\n \"@type\": \"ContactPoint\",\n \"telephone\": \"".concat(contact.telephone, "\",\n \"contactType\": \"").concat(contact.contactType, "\"").concat(contact.areaServed ? ",\n \"areaServed\": ".concat(formatIfArray(contact.areaServed)) : '').concat(contact.availableLanguage ? ",\n \"availableLanguage\": ".concat(formatIfArray(contact.availableLanguage)) : '').concat(contact.contactOption ? ",\n \"contactOption\": \"".concat(contact.contactOption.toString(), "\"") : '', "\n }");
});
};
/**
* @deprecated
*
* See the
* {@link https://developers.google.com/search/docs/data-types/corporate-contact | documentation}
* with the reason for deprecation.
*/
var CorporateContactJsonLd = function CorporateContactJsonLd(_ref) {
var url = _ref.url,
logo = _ref.logo,
contactPoint = _ref.contactPoint,
_ref$defer = _ref.defer,
defer = _ref$defer === void 0 ? false : _ref$defer;
var jsonld = "{\n \"@context\": \"https://schema.org\",\n \"@type\": \"Organization\",\n \"url\": \"".concat(url, "\",\n ").concat(logo ? "\"logo\": \"".concat(logo, "\",") : '', "\n \"contactPoint\": [").concat(buildContactPoint(contactPoint).toString(), "]\n }");
return /*#__PURE__*/_react["default"].createElement(_reactHelmetAsync.Helmet, {
defer: defer
}, /*#__PURE__*/_react["default"].createElement("script", {
type: "application/ld+json"
}, jsonld));
};
exports.CorporateContactJsonLd = CorporateContactJsonLd;