@automattic/social-previews
Version:
A suite of components to generate previews for a post for both social and search engines.
14 lines • 1.94 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
const tslib_1 = require("tslib");
const jsx_runtime_1 = require("react/jsx-runtime");
const i18n_1 = require("@wordpress/i18n");
const clsx_1 = tslib_1.__importDefault(require("clsx"));
const helpers_1 = require("../../../helpers");
const helpers_2 = require("../../helpers");
require("./styles.scss");
const MastodonPostCard = ({ siteName, title, description, url, image, customImage, }) => {
return ((0, jsx_runtime_1.jsxs)("div", { className: (0, clsx_1.default)('mastodon-preview__card', { 'has-image': image }), children: [(0, jsx_runtime_1.jsx)("div", { className: "mastodon-preview__card-img", children: image || customImage ? ((0, jsx_runtime_1.jsx)("img", { src: image || customImage, alt: (0, i18n_1.__)('Mastodon preview thumbnail', 'social-previews') })) : ((0, jsx_runtime_1.jsx)("div", { className: "mastodon-preview__card-img--fallback", children: (0, jsx_runtime_1.jsx)("svg", { xmlns: "http://www.w3.org/2000/svg", height: "24", viewBox: "0 -960 960 960", width: "24", "aria-hidden": "true", children: (0, jsx_runtime_1.jsx)("path", { d: "M320-240h320v-80H320v80Zm0-160h320v-80H320v80ZM240-80q-33 0-56.5-23.5T160-160v-640q0-33 23.5-56.5T240-880h320l240 240v480q0 33-23.5 56.5T720-80H240Zm280-520h200L520-800v200Z" }) }) })) }), (0, jsx_runtime_1.jsxs)("div", { className: "mastodon-preview__card-text", children: [(0, jsx_runtime_1.jsx)("span", { className: "mastodon-preview__card-site", children: siteName || (0, helpers_1.baseDomain)(url) }), (0, jsx_runtime_1.jsx)("span", { className: "mastodon-preview__card-title", children: (0, helpers_2.mastodonTitle)(title) || (0, helpers_1.getTitleFromDescription)(description) }), (0, jsx_runtime_1.jsx)("span", { className: "mastodon-preview__card-description", children: (0, helpers_1.stripHtmlTags)(description) })] })] }));
};
exports.default = MastodonPostCard;
//# sourceMappingURL=index.js.map