open-vault/website/pages/downloads/index.jsx
Jeff Escalante df34412570 New Website! (#8154)
* new documentation website

* ci job adjustment

* update to latest version on downloads page

* remove transition-period scripts

* add netlify toml file

* fix docs patch

* fix ci config?

* revert go.mod changes

* a couple last markdown formatting fixes
2020-01-17 16:18:09 -08:00

34 lines
1,007 B
JavaScript

import fetch from 'isomorphic-unfetch'
import { VERSION } from '../../data/version.js'
import ProductDownloader from '@hashicorp/react-product-downloader'
import Head from 'next/head'
export default function DownloadsPage({ downloadData }) {
return (
<div id="p-downloads" className="g-container">
<Head>
<title key="title">Downloads | Vault by HashiCorp</title>
</Head>
<ProductDownloader
product="Vault"
version={VERSION}
downloads={downloadData}
/>
</div>
)
}
export async function unstable_getStaticProps() {
return fetch(`https://releases.hashicorp.com/vault/${VERSION}/index.json`)
.then(r => r.json())
.then(r => {
// TODO: restructure product-downloader to run this logic internally
return r.builds.reduce((acc, build) => {
if (!acc[build.os]) acc[build.os] = {}
acc[build.os][build.arch] = build.url
return acc
}, {})
})
.then(r => ({ props: { downloadData: r } }))
}