Nav, hero, and callout updates (#11342)

Update image
Add fallback
Update graphic
Update hcp-callout.svg
Update CTAs to point to cloud landing
Fix link
update blog post link

Co-authored-by: Alex Carpenter <im.alexcarpenter@gmail.com>
update-alert-banner
Mike Wickett 5 years ago committed by GitHub
parent 76d7504aa5
commit 38fe22062b
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23

@ -0,0 +1,5 @@
<svg width="151" height="32" fill="none" xmlns="http://www.w3.org/2000/svg">
<path fill-rule="evenodd" clip-rule="evenodd" d="m0 3.793 10.054 5.812v21.424L0 25.217V3.793Z" fill="#02A8EF"/>
<path d="M15.033 6.298 4.103 0v4.368l7.436 4.296v13.117l3.497 2.01c2.163 1.248 3.933.513 3.933-1.663v-9.625c-.002-2.164-1.778-4.954-3.936-6.205Z" fill="#02A8EF"/>
<path d="M49.481 24.014V6.032H46.08v7.398H39.41V6.032h-3.402v17.982h3.402v-7.587h6.67v7.587h3.401Zm2.307-4.94c0 3.293 1.917 5.21 6.399 5.21a20.36 20.36 0 0 0 4.887-.594l-.378-2.943c-1.458.27-3.16.46-4.401.46-2.35 0-3.105-.81-3.105-2.728v-6.912c0-1.917.756-2.727 3.105-2.727 1.242 0 2.943.19 4.4.46l.379-2.944a20.36 20.36 0 0 0-4.887-.594c-4.482 0-6.4 1.917-6.4 5.211v8.1Zm13.187 4.94h3.402v-5.832h3.456c4.185 0 5.86-1.7 5.86-4.833v-2.457c0-3.159-1.54-4.86-5.698-4.86h-7.02v17.982Zm9.315-12.852v1.836c0 1.485-.567 2.187-2.484 2.187h-3.429V9.03h3.43c1.862 0 2.483.648 2.483 2.133Zm9.211 12.852h3.402v-5.832h3.456c4.185 0 5.859-1.7 5.859-4.833v-2.457c0-3.159-1.539-4.86-5.697-4.86h-7.02v17.982Zm9.315-12.852v1.836c0 1.485-.567 2.187-2.484 2.187h-3.429V9.03h3.429c1.863 0 2.484.648 2.484 2.133Zm14.372 4.185c0-3.294-1.215-4.752-5.346-4.752-1.458 0-3.267.243-4.51.621l.406 2.511c1.16-.243 2.457-.405 3.645-.405 2.106 0 2.511.513 2.511 1.971v1.377h-3.159c-2.673 0-3.834 1.026-3.834 3.7 0 2.267 1.026 3.914 3.429 3.914a7.19 7.19 0 0 0 3.915-1.16l.243.89h2.7v-8.667Zm-3.294 5.643c-.621.351-1.512.675-2.484.675-1.026 0-1.323-.405-1.323-1.323 0-.999.297-1.296 1.377-1.296h2.43v1.944Zm10.535 3.294c1.08 0 2.349-.189 3.213-.486l-.405-2.7c-.945.243-1.89.351-2.727.351-1.89 0-2.457-.567-2.457-2.187v-3.645c0-1.62.567-2.187 2.457-2.187.648 0 1.836.108 2.727.351l.405-2.7c-.972-.324-2.295-.486-3.213-.486-4.131 0-5.67 1.512-5.67 5.05v3.59c0 3.537 1.539 5.05 5.67 5.05Zm8.18-.27V5.034l-3.294.458v18.522h3.294Zm4.212-13.149-3.753 6.507 3.969 6.642h3.618l-4.023-6.642 3.861-6.507h-3.672Zm7.291 8.505v-.675h7.317v-2.808c0-2.835-.945-5.292-5.157-5.292s-5.454 2.35-5.454 5.13v3.483c0 3.16 1.431 5.076 5.562 5.076 1.566 0 3.348-.27 4.833-.837l-.513-2.484c-1.431.432-2.754.621-4.023.621-1.998 0-2.565-.62-2.565-2.214Zm0-3.969c0-1.242.567-2.106 2.187-2.106 1.62 0 1.998.864 1.998 2.106v.648h-4.185v-.648Zm15.402-4.806c-1.161.324-2.727 1.242-3.456 1.728l-.216-1.458h-2.781v13.15h3.294v-8.479c1.188-.756 2.214-1.35 3.483-1.917l-.324-3.024Z" fill="#fff"/>
</svg>

After

Width:  |  Height:  |  Size: 2.3 KiB

@ -1,22 +1,44 @@
import Image from 'next/image'
import Button from '@hashicorp/react-button'
import InlineSvg from '@hashicorp/react-inline-svg'
import s from './style.module.css'
export default function SectionBreakCta({ heading, description, link }) {
export default function SectionBreakCta({
badge,
heading,
description,
link,
media,
}) {
return (
<div className={s.sectionBreakCta}>
<hr />
<h4 className={s.heading}>{heading}</h4>
{description && <p className={s.description}>{description}</p>}
<Button
title={link.text}
url={link.url}
theme={{
brand: 'neutral',
variant: 'tertiary-neutral',
background: 'light',
}}
linkType="outbound"
/>
<div className={s.content}>
<div className={s.eyebrow}>
<InlineSvg
className={s.logo}
src={require('./hcp-packer.svg?include')}
/>
<span className={s.badge}>{badge}</span>
</div>
<h2 className={s.heading}>{heading}</h2>
<p className={s.description}>{description}</p>
<Button
title={link.text}
url={link.url}
theme={{
brand: 'packer',
}}
/>
</div>
<div className={s.media}>
<Image
src={media.src}
width={media.width}
height={media.height}
alt={media.alt}
layout="responsive"
/>
</div>
</div>
)
}

@ -1,41 +1,74 @@
.sectionBreakCta {
padding: 88px 24px;
max-width: 800px;
display: grid;
grid-gap: 24px;
text-align: center;
position: relative;
box-shadow: 0 8px 12px rgba(37, 38, 45, 0.08);
margin: 0 16px;
background-color: var(--white);
display: flex;
align-items: center;
flex-direction: column;
padding: 32px 0 32px 24px;
background-color: var(--black);
background-image: radial-gradient(
88.57% 111.76% at 51.65% 103.99%,
rgba(99, 208, 255, 0.4) 0%,
rgba(0, 0, 0, 0) 100%
),
linear-gradient(0deg, #000, #000);
border-radius: 3px;
color: var(--white);
overflow: hidden;
@media (--medium-up) {
margin: 0 auto 104px auto;
flex-direction: row;
padding: 50px 0 50px 50px;
}
& hr {
position: absolute;
top: 56px;
left: calc(50% - 32px);
width: 64px;
background-color: var(--packer);
margin-top: 0;
margin-bottom: 24px;
@media (--large) {
padding: 50px 0 50px 80px;
}
}
.heading {
composes: g-type-display-4 from global;
margin: 0;
.content {
margin-bottom: 48px;
padding-right: 24px;
@media (--medium-up) {
padding: 0 88px;
margin-bottom: 0;
}
}
.description {
composes: g-type-body-large from global;
margin: 0;
.media {
flex-shrink: 0;
width: 100%;
@media (--medium-up) {
padding: 0 80px;
width: 45%;
margin-left: 60px;
}
}
.eyebrow {
margin-bottom: 30px;
display: flex;
align-items: center;
}
.logo {
display: flex;
}
.badge {
margin-left: 16px;
padding: 2px 10px;
background-color: var(--packer-secondary);
color: var(--black);
composes: g-type-label from global;
border-radius: 2px;
}
.heading {
margin: 0;
composes: g-type-display-3 from global;
}
.description {
margin: 16px 0 32px;
composes: g-type-body from global;
color: var(--gray-5);
}

@ -12,8 +12,14 @@ export default function PackerSubnav() {
}}
ctaLinks={[
{ text: 'GitHub', url: 'https://www.github.com/hashicorp/packer' },
{ text: 'Download', url: '/downloads' },
{ text: 'Install Packer', url: '/downloads' },
{
text: 'Try HCP Packer',
url:
'https://cloud.hashicorp.com/products/packer?utm_source=packer_io&utm_content=top_nav_packer',
},
]}
hideGithubStars={true}
currentPath={router.asPath}
menuItemsAlign="right"
menuItems={subnavItems}

@ -13,22 +13,22 @@ export default function Homepage() {
<section id="hero">
<HomepageHero
alert={{
url: 'https://www.hashicorp.com/blog/announcing-hcp-packer',
url:
'https://www.hashicorp.com/blog/announcing-the-public-beta-of-hcp-packer',
tag: 'BLOG POST',
text: 'Announcing HCP Packer',
text: 'Announcing HCP Packer public beta',
}}
heading="Build automated machine images"
subheading="Create identical machine images for multiple platforms from a single source configuration."
links={[
{
text: 'Download',
url: '/downloads',
type: 'inbound',
text: 'Try HCP Packer',
url:
'https://cloud.hashicorp.com/products/packer?utm_source=packer_io&utm_content=homepage_hero_packer',
},
{
text: 'Explore Tutorials',
url: 'https://learn.hashicorp.com/packer',
type: 'outbound',
text: 'Install Packer',
url: '/downloads',
},
]}
heroFeature={
@ -124,11 +124,19 @@ export default function Homepage() {
</section>
<section className={s.sectionGridContainer}>
<SectionBreakCta
heading="Announcing HCP Packer"
description="Bridge the gap between image creation and deployment with image management workflows."
badge="Beta"
heading="Automate build configuration across cloud providers."
description="Set up HCP Packer in minutes to start tracking Packer images across your provisioning pipeline."
link={{
text: 'Sign up to be a beta tester',
url: 'https://go.hashicorp.com/HCP-Packer-Beta',
text: 'Learn more',
url:
'https://cloud.hashicorp.com/products/packer?utm_source=packer_io&utm_content=homepage_signup_callout',
}}
media={{
src: '/img/hcp-callout.svg',
width: 646,
height: 441,
alt: 'Packer UI',
}}
/>
</section>

File diff suppressed because one or more lines are too long

After

Width:  |  Height:  |  Size: 208 KiB

Loading…
Cancel
Save