Load download links from live API

This commit is contained in:
Holden
2026-06-27 00:38:53 -05:00
parent e208f1ad5a
commit b1090d2dc9
7 changed files with 253 additions and 118 deletions

View File

@@ -1,40 +1,12 @@
---
import { api } from "../lib/api";
import { getLatestDownloads } from "../lib/downloads";
import Layout from "../layouts/Layout.astro";
const downloads = [
{
platform: "Windows",
version: "v1.0.3",
href: "#",
icon: "/img/platforms/platform-windows.png",
checksum: "checksum: REPLACE_ME",
},
{
platform: "Linux",
version: "v1.0.3",
href: "#",
icon: "/img/platforms/platform-linux.png",
checksum: "checksum: REPLACE_ME",
},
{
platform: "Oculus Quest",
version: "v1.0.3",
href: "#",
icon: "/img/platforms/platform-oculus.png",
checksum: "checksum: REPLACE_ME",
},
];
const latestDownloads = await getLatestDownloads();
const downloads = latestDownloads.success ? latestDownloads.data : [];
const patchNotes = [
{
version: "v1.0.3",
date: "6/26/2026",
changes: [
"Lorem ipsum dolor sit amet, consectetur adipiscing elit.",
"Nunc at augue eu nulla aliquet consectetur et in magna.",
],
}
];
const patchNotes = await api.builds.v1.getPatchNotes();
---
<Layout>
@@ -47,52 +19,65 @@ const patchNotes = [
Choose the build for your platform.
</p>
<div class="row">
{downloads.map((download) => (
<div class="span4">
<div class="well text-center download-card">
<p>
<img
src={download.icon}
alt=""
width="72"
height="72"
/>
</p>
<h3>{download.platform}</h3>
<p>{download.version}</p>
{/* <p class="muted">
<code>{download.checksum}</code>
</p> */}
<p>
<a
href={download.href}
class="btn btn-primary"
aria-label={`Download for ${download.platform}`}
>
Download
</a>
</p>
</div>
{
downloads.length > 0 ? (
<div class="row">
{downloads.map((download) => (
<div class="span4">
<div class="well text-center download-card">
<p>
<img
src={download.icon}
alt=""
width="72"
height="72"
/>
</p>
<h3>{download.label}</h3>
<p>{download.version}</p>
<p>
<a
href={download.href}
class="btn btn-primary"
aria-label={`Download for ${download.label}`}
>
Download
</a>
</p>
</div>
</div>
))}
</div>
))}
</div>
) : (
<div class="alert alert-warning">
Downloads are unavailable right now.
</div>
)
}
<section class="download-patch-notes">
<div class="page-header">
<h2>Patch Notes</h2>
</div>
{patchNotes.map((patchNote) => (
<div class="well patch-note">
<h3>{patchNote.version}</h3>
<p class="muted">{patchNote.date}</p>
<ul>
{patchNote.changes.map((change) => (
<li>{change}</li>
))}
</ul>
</div>
))}
{
patchNotes.length > 0 ? (
patchNotes.map((patchNote) => (
<div class="well patch-note">
<h3>{patchNote.version}</h3>
<p class="muted">{patchNote.date}</p>
<ul>
{patchNote.changes.map((change) => (
<li>{change}</li>
))}
</ul>
</div>
))
) : (
<div class="well patch-note">
<p>No patch notes yet.</p>
</div>
)
}
</section>
</div>
</Layout>

View File

@@ -1,4 +1,5 @@
---
import DownloadButton from "../components/DownloadButton.astro";
import Layout from "../layouts/Layout.astro";
const credits = [
@@ -105,17 +106,7 @@ const credits = [
/>
<h1 class="masthead-title">TenWholeYears</h1>
<p>A love letter to Rec Room on its true 10th anniversary</p>
<div class="masthead-download">
<a href="/downloads/" class="btn btn-primary btn-large">
Download for Windows x64
</a>
<div class="subtext">
<span>or</span>
<a href="/downloads/" class="masthead-platforms"
>Other Platforms</a
>
</div>
</div>
<DownloadButton />
</div>
</div>
<div class="container">