ArticleCard image refactoring

This commit is contained in:
tmshv committed 2019-10-17 12:28:32 +03:00
1 parent 3dfca4c3e2
commit 9fb815081c
2 files changed
+29 -13

No files matched your search

+14 -7
View File
@@ -6,11 +6,18 @@ const Date = ({ children }) => (
<p className="date">{dateFormat(children)}</p>
)
export interface IArticleCardProps {
article: any
interface IImage {
alt: string
src: string
srcSet: Array<{ url: string, density: number }>
}
export const ArticleCard: React.FC<IArticleCardProps> = ({ article }) => (
export interface IArticleCardProps {
article: any
preview?: IImage
}
export const ArticleCard: React.FC<IArticleCardProps> = ({ article, ...props }) => (
<section className="ArticleCard">
<style jsx>{`
.ArticleCard {
@@ -105,13 +112,13 @@ export const ArticleCard: React.FC<IArticleCardProps> = ({ article }) => (
<a className="invisible" href={article.url}>
<div className="ArticleCard-image">
{!article.preview ? null : (
{!props.preview ? null : (
<picture>
<img
className={cx({ opa: false })}
alt={article.title}
src={article.preview.src}
srcSet={article.preview.set.map(({ url, density }) => `${url} ${density}x`)}
alt={props.preview.alt}
src={props.preview.src}
srcSet={props.preview.srcSet.map(({ url, density }) => `${url} ${density}x`).join(' ')}
/>
</picture >
)}
+15 -6
View File
@@ -17,12 +17,21 @@ export const ArticleCardList = ({ articles, nextPage, prevPage }) => (
)}
<div className={'body'}>
{articles.map((article, i) => (
<ArticleCard
key={i}
article={article}
/>
))}
{articles.map((article, i) => {
const preview = {
alt: article.title,
src: article.preview.src,
srcSet: article.preview.set,
}
return (
<ArticleCard
key={i}
article={article}
preview={preview}
/>
)
})}
</div>
{!nextPage ? null : (