@automattic/social-previews
Version:
A suite of components to generate previews for a post for both social and search engines.
22 lines • 1.86 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
exports.ThreadsPostPreview = void 0;
const jsx_runtime_1 = require("react/jsx-runtime");
const helpers_1 = require("../helpers");
const card_1 = require("./card");
const footer_1 = require("./footer");
const header_1 = require("./header");
const helpers_2 = require("./helpers");
const media_1 = require("./media");
const sidebar_1 = require("./sidebar");
require("./style.scss");
const ThreadsPostPreview = ({ caption, date, image, media, name, profileImage, showThreadConnector, title, url, }) => {
const hasMedia = !!media?.length;
const displayAsCard = url && image && !hasMedia;
return ((0, jsx_runtime_1.jsx)("div", { className: "threads-preview__wrapper", children: (0, jsx_runtime_1.jsxs)("div", { className: "threads-preview__container", children: [(0, jsx_runtime_1.jsx)(sidebar_1.Sidebar, { profileImage: profileImage, showThreadConnector: showThreadConnector }), (0, jsx_runtime_1.jsxs)("div", { className: "threads-preview__main", children: [(0, jsx_runtime_1.jsx)(header_1.Header, { name: name, date: date }), (0, jsx_runtime_1.jsxs)("div", { className: "threads-preview__content", children: [caption ? ((0, jsx_runtime_1.jsx)("div", { className: "threads-preview__text", children: (0, helpers_1.preparePreviewText)(caption, {
platform: 'threads',
maxChars: helpers_2.CAPTION_MAX_CHARS,
}) })) : null, hasMedia ? (0, jsx_runtime_1.jsx)(media_1.Media, { media: media }) : null, displayAsCard ? (0, jsx_runtime_1.jsx)(card_1.Card, { image: image, title: title || '', url: url }) : null] }), (0, jsx_runtime_1.jsx)(footer_1.Footer, {})] })] }) }));
};
exports.ThreadsPostPreview = ThreadsPostPreview;
//# sourceMappingURL=post-preview.js.map