df34412570
* 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
34 lines
1,007 B
JavaScript
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 } }))
|
|
}
|