6ce7a0378e
* Add Cosmic CMS Example * with native .env support, this file isn't needed anymore * FIX use path alias * Add cosmicjs package * Fix alias import in pages/api/preview * Added: react-imgix & lazysizes package * Load lazysizes in layout * Used imgix image with lazyloading * Added avatar imgix optimizations * EDITED: steps to install content, preview * EDITED: demo link * EDITED: Install step * EDITED: preview link steps * Edited: demo link * FIXED: object_slug * Screenshots * Fixed object_slug link * Update README.md * Fix: formatting issue * Updated readme and renamed .env to env.local * Sanity checks * Handle fallback data when expected * Added link to the example in other examples * Updated demo deployment * Added example to docs * minor lint fix * Remove manual download step * use vercel.json Co-authored-by: Tony Spiro <tspiro@tonyspiro.com> Co-authored-by: Luis Alvarez <luis@vercel.com>
40 lines
1 KiB
JavaScript
40 lines
1 KiB
JavaScript
import Avatar from './avatar'
|
|
import Date from './date'
|
|
import CoverImage from './cover-image'
|
|
import Link from 'next/link'
|
|
|
|
export default function HeroPost({
|
|
title,
|
|
coverImage,
|
|
date,
|
|
excerpt,
|
|
author,
|
|
slug,
|
|
}) {
|
|
return (
|
|
<section>
|
|
<div className="mb-8 md:mb-16">
|
|
<CoverImage title={title} url={coverImage.imgix_url} slug={slug} />
|
|
</div>
|
|
<div className="md:grid md:grid-cols-2 md:col-gap-16 lg:col-gap-8 mb-20 md:mb-28">
|
|
<div>
|
|
<h3 className="mb-4 text-4xl lg:text-6xl leading-tight">
|
|
<Link as={`/posts/${slug}`} href="/posts/[slug]">
|
|
<a className="hover:underline">{title}</a>
|
|
</Link>
|
|
</h3>
|
|
<div className="mb-4 md:mb-0 text-lg">
|
|
<Date dateString={date} />
|
|
</div>
|
|
</div>
|
|
<div>
|
|
<p className="text-lg leading-relaxed mb-4">{excerpt}</p>
|
|
<Avatar
|
|
name={author.title}
|
|
picture={author.metadata.picture.imgix_url}
|
|
/>
|
|
</div>
|
|
</div>
|
|
</section>
|
|
)
|
|
}
|