export type InstallLang = "en" | "cn"; export type InstallOption = { id: string; label: string; href: string; }; type DownloadArtifact = { id: string; labels: Record; suffix: string; }; const DOWNLOAD_BASE_URL = "https://dl.dbxio.com/releases/latest"; const downloadArtifacts: DownloadArtifact[] = [ { id: "macos-arm", labels: { en: "For macOS (Apple Silicon)", cn: "适用于 macOS (Apple Silicon)" }, suffix: "aarch64.dmg", }, { id: "macos-intel", labels: { en: "For macOS (Intel)", cn: "适用于 macOS (Intel)" }, suffix: "x64.dmg", }, { id: "windows", labels: { en: "For Windows", cn: "适用于 Windows" }, suffix: "x64-setup.exe", }, { id: "linux", labels: { en: "For Linux x64", cn: "适用于 Linux x64" }, suffix: "amd64.AppImage", }, { id: "linux-arm", labels: { en: "For Linux ARM64", cn: "适用于 Linux ARM64" }, suffix: "aarch64.AppImage", }, ]; export function createInstallOptions(lang: InstallLang, version: string): InstallOption[] { return downloadArtifacts.map((artifact) => ({ id: artifact.id, label: artifact.labels[lang], href: `${DOWNLOAD_BASE_URL}/DBX_${version}_${artifact.suffix}?v=${version}`, })); }