link-preview-card
Version:
plugin for link-previewer
30 lines (27 loc) • 932 B
text/typescript
var CARD_DETAILS = {
image: `<div class="__linkPreview_div0"><img src="<::image::>" alt="thumbnail" /></div>`,
main: `<div class="__linkPreview_div1"><p><::title::></p><div class="__linkPreview_icon"><img src="<::icon::>" alt="icon" /></div></div><div class="__linkPreview_div2"><p><::description::></p></div>`,
extra: `<div class="__linkPreview_div3"><span><::type::></span><span><::language::></span></div>`,
};
export default function getHTMLDetails(
data: {
title: string;
description: string;
icon: string;
image?: string;
},
show: { image: boolean; extra: boolean }
) {
var html = "";
if (show.image) {
html += CARD_DETAILS.image;
}
html += CARD_DETAILS.main;
if (show.extra) {
html += CARD_DETAILS.extra;
}
Object.keys(data).forEach((key: string) => {
html = html.replace(new RegExp(`<::${key}::>`, "g"), data[key]);
});
return html;
}