diff options
| author | William Pitcock <nenolod@dereferenced.org> | 2019-01-27 13:47:30 +0000 |
|---|---|---|
| committer | William Pitcock <nenolod@dereferenced.org> | 2019-01-28 05:50:12 +0000 |
| commit | 0924907c64376249433e2fd16278662181c9e856 (patch) | |
| tree | b83941e57092d1b1acc28ecea601de0b9c0bd2b1 /src/components/link-preview/link-preview.vue | |
| parent | b27ec058cae582e8b9ad9e56be0e9be57f865886 (diff) | |
add link-preview component
Diffstat (limited to 'src/components/link-preview/link-preview.vue')
| -rw-r--r-- | src/components/link-preview/link-preview.vue | 59 |
1 files changed, 59 insertions, 0 deletions
diff --git a/src/components/link-preview/link-preview.vue b/src/components/link-preview/link-preview.vue new file mode 100644 index 00000000..49de654f --- /dev/null +++ b/src/components/link-preview/link-preview.vue @@ -0,0 +1,59 @@ +<template> + <div> + <a class="link-preview-card" :href="card.url" target="_blank" rel="noopener"> + <div class="image"> + <div :style="{ backgroundImage: 'url(' + card.image + ')' }"></div> + </div> + <div class="content"> + <strong>{{ card.title }}</strong> + <p>{{ card.description }}</p> + <span class="host">{{ card.provider_name }}</span> + </div> + </a> + </div> +</template> + +<script src="./link-preview.js"></script> + +<style lang="scss"> +@import '../../_variables.scss'; + +.link-preview-card { + display: flex !important; + flex-direction: row; + cursor: pointer; + margin: 0.5em 0.7em 0.6em 0.0em; + + .image { + flex: 0 0 100px; + position: relative; + } + + .image > div { + display: block; + margin: 0; + width: 100%; + height: 100%; + object-fit: cover; + background-size: cover; + background-position: center center; + } + + .content { + padding: 1em; + flex: 1; + + .host { + font-size: 90%; + } + } + + color: $fallback--text; + border-style: solid; + border-width: 1px; + border-radius: $fallback--attachmentRadius; + border-radius: var(--attachmentRadius, $fallback--attachmentRadius); + border-color: $fallback--border; + border-color: var(--border, $fallback--border); +} +</style> |
