|
<template> |
|
<Layout> |
|
<!--Container--> |
|
<div class="container px-4 md:px-0 max-w-6xl mx-auto -mt-32"> |
|
<div class="mx-0 sm:mx-6"> |
|
<!--Nav--> |
|
<nav class="mt-0 w-full"> |
|
<div class="container mx-auto flex items-center"> |
|
<!-- <div class="flex w-1/2 pl-4 text-sm"></div> --> |
|
<div class="flex w-full justify-end content-center"> |
|
<a |
|
class="inline-block text-gray-500 no-underline hover:text-white hover:text-underline text-center h-10 p-2 md:h-auto md:p-4 avatar" |
|
data-tippy-content="@twitter_handle" |
|
href="https://twitter.com/intent/tweet?url=#" |
|
> |
|
<svg |
|
class="fill-current h-4" |
|
xmlns="https://www.w3.org/2000/svg" |
|
viewBox="0 0 32 32" |
|
> |
|
<path |
|
d="M30.063 7.313c-.813 1.125-1.75 2.125-2.875 2.938v.75c0 1.563-.188 3.125-.688 4.625a15.088 15.088 0 0 1-2.063 4.438c-.875 1.438-2 2.688-3.25 3.813a15.015 15.015 0 0 1-4.625 2.563c-1.813.688-3.75 1-5.75 1-3.25 0-6.188-.875-8.875-2.625.438.063.875.125 1.375.125 2.688 0 5.063-.875 7.188-2.5-1.25 0-2.375-.375-3.375-1.125s-1.688-1.688-2.063-2.875c.438.063.813.125 1.125.125.5 0 1-.063 1.5-.25-1.313-.25-2.438-.938-3.313-1.938a5.673 5.673 0 0 1-1.313-3.688v-.063c.813.438 1.688.688 2.625.688a5.228 5.228 0 0 1-1.875-2c-.5-.875-.688-1.813-.688-2.75 0-1.063.25-2.063.75-2.938 1.438 1.75 3.188 3.188 5.25 4.25s4.313 1.688 6.688 1.813a5.579 5.579 0 0 1 1.5-5.438c1.125-1.125 2.5-1.688 4.125-1.688s3.063.625 4.188 1.813a11.48 11.48 0 0 0 3.688-1.375c-.438 1.375-1.313 2.438-2.563 3.188 1.125-.125 2.188-.438 3.313-.875z" |
|
></path> |
|
</svg> |
|
</a> |
|
<a |
|
class="inline-block text-gray-500 no-underline hover:text-white hover:text-underline text-center h-10 p-2 md:h-auto md:p-4 avatar" |
|
data-tippy-content="#facebook_id" |
|
href="https://www.facebook.com/sharer/sharer.php?u=#" |
|
> |
|
<svg |
|
class="fill-current h-4" |
|
xmlns="https://www.w3.org/2000/svg" |
|
viewBox="0 0 32 32" |
|
> |
|
<path |
|
d="M19 6h5V0h-5c-3.86 0-7 3.14-7 7v3H8v6h4v16h6V16h5l1-6h-6V7c0-.542.458-1 1-1z" |
|
></path> |
|
</svg> |
|
</a> |
|
</div> |
|
</div> |
|
</nav> |
|
|
|
<div |
|
class="bg-gray-200 w-full text-xl md:text-2xl text-gray-800 leading-normal rounded-t" |
|
> |
|
<!--Lead Card--> |
|
<div |
|
v-if="featuredPost" |
|
:key="featuredPost.id" |
|
class="flex h-full bg-white rounded overflow-hidden shadow-lg" |
|
> |
|
<g-link |
|
class="flex flex-wrap no-underline hover:no-underline" |
|
:to="featuredPost.path" |
|
> |
|
<div class="w-full md:w-2/3 rounded-t"> |
|
<g-image |
|
:src="featuredPost.image" |
|
class="h-full w-full shadow" |
|
/> |
|
</div> |
|
|
|
<div class="w-full md:w-1/3 flex flex-col flex-grow flex-shrink"> |
|
<div |
|
class="flex-1 bg-white rounded-t rounded-b-none overflow-hidden shadow-lg" |
|
> |
|
<div class="w-full font-bold text-xl text-gray-900 px-6"> |
|
{{ featuredPost.title }} |
|
</div> |
|
<p class="text-gray-800 font-serif text-base px-6 mb-5"> |
|
{{ featuredPost.description }} |
|
</p> |
|
</div> |
|
|
|
<div |
|
class="flex-none mt-auto bg-white rounded-b rounded-t-none overflow-hidden shadow-lg p-6" |
|
> |
|
<div class="flex items-center justify-between"> |
|
<img |
|
class="w-8 h-8 rounded-full mr-4 avatar" |
|
data-tippy-content="Author Name" |
|
src="https://i.pravatar.cc/300" |
|
alt="Avatar of Author" |
|
/> |
|
<p class="text-gray-600 text-xs md:text-sm">1 MIN READ</p> |
|
</div> |
|
</div> |
|
</div> |
|
</g-link> |
|
</div> |
|
<!--/Lead Card--> |
|
|
|
<!--Posts Container--> |
|
<div class="flex flex-wrap justify-between pt-12 -mx-6"> |
|
<!--1/3 col --> |
|
<div |
|
class="w-full md:w-1/3 p-6 flex flex-col flex-grow flex-shrink" |
|
v-for="post in $page.posts.edges" |
|
:key="post.node.id" |
|
> |
|
<div |
|
class="flex-1 bg-white rounded-t rounded-b-none overflow-hidden shadow-lg" |
|
> |
|
<g-link |
|
class="flex flex-wrap no-underline hover:no-underline" |
|
:to="post.node.path" |
|
> |
|
<g-image |
|
alt="Cover image" |
|
v-if="post.node.image" |
|
class="h-64 w-full rounded-t pb-6" |
|
:src="post.node.image" |
|
/> |
|
<div class="w-full font-bold text-xl text-gray-900 px-6"> |
|
{{ post.node.title }} |
|
</div> |
|
<p class="text-gray-800 font-serif text-base px-6 mb-5"> |
|
{{ post.node.description }} |
|
</p> |
|
</g-link> |
|
</div> |
|
<div |
|
class="flex-none mt-auto bg-white rounded-b rounded-t-none overflow-hidden shadow-lg p-6" |
|
> |
|
<div class="flex items-center justify-between"> |
|
<img |
|
class="w-8 h-8 rounded-full mr-4 avatar" |
|
data-tippy-content="Author Name" |
|
src="https://i.pravatar.cc/300" |
|
alt="Avatar of Author" |
|
/> |
|
<p class="text-gray-600 text-xs md:text-sm">1 MIN READ</p> |
|
</div> |
|
</div> |
|
</div> |
|
</div> |
|
<!--/ Post Content--> |
|
</div> |
|
|
|
<!--Subscribe--> |
|
<div |
|
class="container font-sans bg-teal-100 rounded mt-8 p-4 md:p-24 text-center" |
|
> |
|
<h2 class="font-bold break-normal text-2xl md:text-4xl"> |
|
Subscribe to Ghostwind CSS |
|
</h2> |
|
<h3 |
|
class="font-bold break-normal font-normal text-gray-600 text-base md:text-xl" |
|
> |
|
Get the latest posts delivered right to your inbox |
|
</h3> |
|
<div class="w-full text-center pt-4"> |
|
<form action="#"> |
|
<div |
|
class="max-w-xl mx-auto p-1 pr-0 flex flex-wrap items-center" |
|
> |
|
<input |
|
type="email" |
|
placeholder="youremail@example.com" |
|
class="flex-1 appearance-none rounded shadow p-3 text-gray-600 mr-2 focus:outline-none" |
|
/> |
|
<button |
|
type="submit" |
|
class="flex-1 mt-4 md:mt-0 block md:inline-block appearance-none bg-teal-500 text-white text-base font-semibold tracking-wider uppercase py-4 rounded shadow hover:bg-teal-400" |
|
> |
|
Subscribe |
|
</button> |
|
</div> |
|
</form> |
|
</div> |
|
</div> |
|
<!-- /Subscribe--> |
|
</div> |
|
</div> |
|
</Layout> |
|
</template> |
|
|
|
<page-query> |
|
query { |
|
posts: allPost(filter: { published: { eq: true }, featured: { eq: false }}) { |
|
edges { |
|
node { |
|
id |
|
title |
|
path |
|
author |
|
date (format: "D/MM/YYYY") |
|
timeToRead |
|
description |
|
image (width: 770, height: 380, blur: 10) |
|
} |
|
} |
|
}, |
|
featuredPost: allPost(filter: { featured: { eq: true }}) { |
|
edges { |
|
node { |
|
id |
|
title |
|
path |
|
author |
|
date (format: "D/MM/YYYY") |
|
timeToRead |
|
description |
|
image (width: 770, height: 380, blur: 10) |
|
} |
|
} |
|
} |
|
} |
|
</page-query> |
|
<script> |
|
export default { |
|
computed: { |
|
featuredPost() { |
|
if ( |
|
this.$page && |
|
this.$page.featuredPost && |
|
this.$page.featuredPost.edges |
|
) { |
|
return this.$page.featuredPost.edges[0].node; |
|
} |
|
return null; |
|
} |
|
}, |
|
metaInfo: { |
|
title: "Hello, world!" |
|
} |
|
}; |
|
</script> |
|
|
|
<style></style> |