site: add direct links to unstable builds

Links to build types and architectures are now included in the unstable
download section.
This commit is contained in:
Harvey Tindall
2021-12-29 22:33:07 +00:00
parent cd2c37057d
commit 57e6469564
5 changed files with 70 additions and 4 deletions
+3 -2
View File
@@ -1,5 +1,6 @@
import { Modal } from "../../ts/modules/modal.js";
import { whichAnimationEvent } from "../../ts/modules/common.js";
import { loadBuilds } from "./repo.js";
interface window extends Window {
animationEvent: string;
@@ -18,7 +19,7 @@ const debUnstableButton = document.getElementById("download-deb-unstable") as HT
debUnstableButton.onclick = debModal.toggle;
const stableSect = document.getElementById("sect-stable");
const unstableSect = document.getElementById("sect-unstable");
export const unstableSect = document.getElementById("sect-unstable");
const stableButton = document.getElementById("download-stable") as HTMLSpanElement;
const unstableButton = document.getElementById("download-unstable") as HTMLSpanElement;
@@ -51,4 +52,4 @@ const dockerUnstableButton = document.getElementById("download-docker-unstable")
dockerButton.onclick = dockerModal.toggle;
dockerUnstableButton.onclick = dockerModal.toggle;
loadBuilds();
+57
View File
@@ -0,0 +1,57 @@
import { _get, _post, _delete } from "../../ts/modules/common.js";
import { unstableSect } from "./main.js";
const urlBase = "https://builds.hrfee.pw/repo/hrfee/jfa-go/latest/file/";
const categories = {
"Windows (Tray)": {
"x64": "Windows"
},
"Linux (Tray)": {
"x64": "TrayIcon_Linux_x86_64.zip"
},
"Linux": {
"x64": "Linux_x86_64.zip",
"ARM (32-bit)": "Linux_arm.zip",
"ARM (64-bit)": "Linux_arm64.zip"
},
"macOS": {
"x64": "macOS_x86_64",
"ARM": "macOS_arm64"
}
};
export const loadBuilds = () => {
for (let buildName in categories) {
if (Object.keys(categories[buildName]).length == 1) {
const button = document.createElement("a") as HTMLAnchorElement;
button.classList.add("button", "~info", "mr-half", "mb-half", "lang-link");
button.target = "_blank";
button.textContent = buildName.toLowerCase();
button.href = urlBase + categories[buildName][Object.keys(categories[buildName])[0]];
unstableSect.querySelector(".row.col.flex.center").appendChild(button);
} else {
const dropdown = document.createElement("span") as HTMLSpanElement;
dropdown.tabIndex = 0;
dropdown.classList.add("dropdown");
let innerHTML = `
<span class="button ~info mr-half mb-half lang-link">
${buildName.toLowerCase()}
<span class="ml-half chev"></span>
</span>
<div class="dropdown-display above">
<div class="card ~info !low">
`;
for (let arch in categories[buildName]) {
innerHTML += `
<a href="${urlBase + categories[buildName][arch]}" target="_blank" class="button input ~neutral field mb-half lang-link">${arch}</a>
`;
}
innerHTML += `
</div>
</div>
`;
dropdown.innerHTML = innerHTML;
unstableSect.querySelector(".row.col.flex.center").appendChild(dropdown);
}
}
};