UNPKG

@automattic/social-previews

Version:

A suite of components to generate previews for a post for both social and search engines.

12 lines 1.15 kB
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime"; import clsx from 'clsx'; import { baseDomain, firstValid, hardTruncation, shortEnough, stripHtmlTags } from '../helpers'; const DESCRIPTION_LENGTH = 200; const twitterDescription = firstValid(shortEnough(DESCRIPTION_LENGTH), hardTruncation(DESCRIPTION_LENGTH)); export const Card = ({ description, image, title, cardType, url, }) => { const cardClassNames = clsx(`twitter-preview__card-${cardType}`, { 'twitter-preview__card-has-image': !!image, }); return (_jsx("div", { className: "twitter-preview__card", children: _jsxs("div", { className: cardClassNames, children: [image && _jsx("img", { className: "twitter-preview__card-image", src: image, alt: "" }), _jsxs("div", { className: "twitter-preview__card-body", children: [_jsx("div", { className: "twitter-preview__card-url", children: baseDomain(url || '') }), _jsx("div", { className: "twitter-preview__card-title", children: title }), _jsx("div", { className: "twitter-preview__card-description", children: twitterDescription(stripHtmlTags(description)) })] })] }) })); }; //# sourceMappingURL=card.js.map