mirror of
https://github.com/hrfee/jfa-go.git
synced 2024-11-05 01:40:10 +00:00
Harvey Tindall
18ae03554f
instead of adding dark: variants to each element, a preprocessor script adds them. still needs to be implemented to typescript.
58 lines
2.1 KiB
TypeScript
58 lines
2.1 KiB
TypeScript
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);
|
|
}
|
|
}
|
|
};
|