open-vault/website/pages/_app.js

68 lines
2.5 KiB
JavaScript
Raw Normal View History

import './style.css'
import '@hashicorp/nextjs-scripts/lib/nprogress/style.css'
import Router from 'next/router'
import Head from 'next/head'
import { ErrorBoundary } from '@hashicorp/nextjs-scripts/lib/bugsnag'
import createConsentManager from '@hashicorp/nextjs-scripts/lib/consent-manager'
import NProgress from '@hashicorp/nextjs-scripts/lib/nprogress'
import useAnchorLinkAnalytics from '@hashicorp/nextjs-scripts/lib/anchor-link-analytics'
import HashiHead from '@hashicorp/react-head'
import ProductSubnav from 'components/subnav'
2020-10-09 16:15:38 +00:00
import HashiStackMenu from '@hashicorp/react-hashi-stack-menu'
import Footer from 'components/footer'
import Error from './_error'
import AlertBanner from '@hashicorp/react-alert-banner'
import alertBannerData, { ALERT_BANNER_ACTIVE } from '../data/alert-banner'
NProgress({ Router })
const { ConsentManager, openConsentManager } = createConsentManager({
preset: 'oss',
})
export default function App({ Component, pageProps }) {
useAnchorLinkAnalytics()
return (
<ErrorBoundary FallbackComponent={Error}>
<HashiHead
is={Head}
title="Vault by HashiCorp"
siteName="Vault by HashiCorp"
description="Vault secures, stores, and tightly controls access to tokens, passwords, certificates, API keys, and other secrets in modern computing. Vault handles leasing, key revocation, key rolling, auditing, and provides secrets as a service through a unified API."
image="https://www.vaultproject.io/img/og-image.png"
icon={[
{
href: 'https://www.datocms-assets.com/2885/1597163356-vault-favicon.png?h=16&w=16',
type: 'image/png',
sizes: '16x16',
},
{
href: 'https://www.datocms-assets.com/2885/1597163356-vault-favicon.png?h=32&w=32',
type: 'image/png',
sizes: '32x32',
},
{
href: 'https://www.datocms-assets.com/2885/1597163356-vault-favicon.png?h=96&w=96',
type: 'image/png',
sizes: '96x96',
},
{
href: 'https://www.datocms-assets.com/2885/1597163356-vault-favicon.png?h=192&w=192',
type: 'image/png',
sizes: '192x192',
},
]}
/>
{ALERT_BANNER_ACTIVE && (
[Assembly]: Branding Refresh (#11118) * style: update gray brand colors (#11092) * Style: Update brand colors (#11224) * style: update brand colors * chore: upgrade react-components * style: update use cases page btn --> vault brand * chore: home page component api updates * style: fix link colors * run npm audit * upgrade downloads page * typo fixes * fix husky, run lint * roll back husky upgrade * style(home callouts): body copy gray -2 * style: testing hashi-stack-menu prerelease * style: upgrade components --> color contrast (#11328) * chore: upgrades components w/ new styles * refactor(use-cases pages): to use FeaturedSlider component * style(BeforeAfterDiagram): swap check icon * style(use-cases-cta): adjust background color --> vault primary * chore(community): pass to VerticalBlockTextList * chore(deps): adds tippy.js * chore(deps): upgrade product downloads pre-release * fix(subnav): use asPath to set active item * chore: upgrade deps to stable * style: home callouts body copy to black * chore: upgrade hashi-stack-menu to stable * chore: upgrade deps * style(use-cases): update background and button colors * chore: upgrade deps body copy color * chore: upgrades alert-banner * fix: remove package.json * content(home): removes hero background image * content(home): updates assets * content(use-cases): updates assets * style(before-after-diagram): adjust scaling styles * content:swap svgs for pngs * style: updates before/after diagram * chore: testing product download page pre-release * content: updates consul & nomad logomarks * chore: updates product download page to stable Co-authored-by: Jeff Escalante <jescalan@users.noreply.github.com>
2021-05-03 22:01:29 +00:00
<AlertBanner {...alertBannerData} product="vault" />
)}
2020-10-09 16:15:38 +00:00
<HashiStackMenu />
<ProductSubnav />
<Component {...pageProps} />
<Footer openConsentManager={openConsentManager} />
<ConsentManager />
</ErrorBoundary>
)
}